Déploiement sur Fedora

Fedora 39+ inclut podman par défaut, il faut donc installer explicitement docker-ce pour exécuter SkyView. SELinux est en mode enforcing par défaut et firewalld est actif par défaut, les labels de volumes et les règles de ports sont donc essentiels.

1. Installer docker-ce (pas podman)

Fedora utilise podman par défaut, mais l'image SkyView et les fichiers docker-compose sont testés pour la compatibilité docker. podman est en grande partie compatible, mais le mode réseau host se comporte légèrement différemment, nous recommandons donc de passer à docker-ce :

bash
sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo
sudo dnf -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo usermod -aG docker $USER

2. Gérer SELinux (essentiel)

Les montages de volumes doivent porter le label :Z ou :z

SELinux sur Fedora est forcé en mode enforcing, le conteneur se voit donc refuser l'écriture sur les volumes de données à moins que le volume ne soit labellisé :Z (privé, recommandé) ou :z (partagé). Voir l'exemple de compose.

3. Ouvrir les ports firewalld

bash
sudo firewall-cmd --permanent --add-port=23406/tcp
sudo firewall-cmd --permanent --add-port=23880/tcp
sudo firewall-cmd --permanent --add-port=24214/tcp
sudo firewall-cmd --permanent --add-port=24215/tcp
sudo firewall-cmd --permanent --add-port=23515/udp
sudo firewall-cmd --reload

4. Démarrer SkyView

Nous maintenons un modèle compose dédié pour Fedora (avec tous les labels SELinux :Z préconfigurés), il n'y a donc rien à changer à la main :

Télécharger compose.yml

Modèle Fedora · variante openvino · labels :Z préconfigurés · mise à jour en ligne via la console web

Ou via wget en SSH :

bash
mkdir -p ~/yunkan && cd ~/yunkan
wget https://yun-kan.com/compose/fedora.yml -O compose.yml
docker compose up -d

Comment passer à une autre variante

Ce modèle utilise par défaut yunkan-openvino (iGPU Intel). Pour CPU uniquement, changez image: en yunkan-cpu ; pour un GPU NVIDIA, changez-le en yunkan-cuda ou yunkan-trt et décommentez deploy:. Quelle que soit la variante utilisée, les labels de volume :Z doivent être conservés (SELinux l'exige).
yaml
name: yunkan

services:
  yunkan:
    image: registry.cn-hangzhou.aliyuncs.com/yunkan/yunkan-openvino:latest
    container_name: yunkan
    restart: always
    network_mode: host
    devices:
      - /dev/dri:/dev/dri
    volumes:
      - ./data:/app/data:Z
      - ./recordings:/app/data/recordings:Z
      - /etc/machine-id:/etc/machine-id:ro
      - /sys/class/dmi/id/product_uuid:/sys/class/dmi/id/product_uuid:ro
      - /var/run/docker.sock:/var/run/docker.sock:z
    environment:
      - TZ=Asia/Shanghai
      - SKYVIEW_SELF_CONTAINER_NAME=yunkan
compose.yml version Fedora (:Z ajouté sur les lignes clés)

Une fois démarré, ouvrez http://<IP du serveur>:23406/ dans le navigateur pour accéder à l'assistant de configuration.

5. FAQ

Permission refusée lors de l'écriture des enregistrements après le démarrage du conteneur

Il s'agit presque certainement d'un problème de label de volume SELinux. Faites docker compose down, ajoutez :Z à la fin des lignes de volumes du compose, puis docker compose up -d pour redémarrer. /etc/machine-id et /sys/class/dmi/id/product_uuid sont en lecture seule et n'ont besoin d'aucun label (vous pouvez ajouter :ro,Z pour éviter des refus injustifiés).

GPU NVIDIA sur Fedora

nvidia-container-toolkit propose un paquet pour Fedora ; une fois installé, runtime: nvidia fonctionne. Voir la documentation officielle NVIDIA.

Mise à jour : entièrement prise en charge — mise à jour en un clic dans le Web Admin, ou manuellement docker compose pull && docker compose up -d.

Déploiement sur Fedora - Documentation SkyView