Déploiement sur Synology DSM

Les modèles Synology Intel + iGPU (DS920+ / DS423+ / DS1522+ / DS224+, etc.) fonctionnent au mieux avec la variante openvino. Cette page vous guide pas à pas, de l'installation en SSH jusqu'à l'assistant de configuration dans le navigateur. Les modèles AMD/ARM (DS223j / DS723+) n'ont pas de /dev/dri et ne peuvent exécuter que la variante cpu — l'inférence perd un cran, mais les fonctionnalités restent identiques.

1. Modèles pris en charge et variante recommandée

ModèleCPUVariante recommandéeRemarques
DS920+ / DS1522+ / DS923+Intel J4125 / R1600openvinoiGPU Intel + 4 à 8 flux en 1080p exploitables
DS423+ / DS224+Intel N100 / N5105openvinoiGPU Alder Lake-N, 2 à 4 flux
DS1621+ / DS1821+ (Ryzen)AMD V1500BcpuPas d'iGPU, inférence lente
DS223j / DS723+ (ARM)Realtek / AMD R1600Non pris en chargeSkyView n'est disponible qu'en amd64 pour les modèles ARM ; le Ryzen n'a pas d'iGPU

2. Prérequis

  1. 1

    Vérifier la version de DSM

    Panneau de configuration → Centre d'informations → version DSM ≥ 7.2 ; mettez à niveau au préalable si nécessaire

  2. 2

    Installer Container Manager

    Recherchez « Container Manager » dans le Centre de paquets et installez-le (il s'appelait Docker dans les versions plus anciennes, renommé à partir de la 7.2)

  3. 3

    Créer le répertoire du projet

    File Station → /docker → créez un dossier nommé yunkan ; le chemin final ressemble à /volume1/docker/yunkan/

  4. 4

    Activer SSH

    Panneau de configuration → Terminal et SNMP → Activer SSH ; vous exécuterez docker compose via SSH plus tard (l'interface graphique de Container Manager ne prend pas en charge le champ devices)

3. Récupérer le fichier compose

Choisissez l'une des trois méthodes : téléchargement depuis le navigateur, wget via SSH, ou copier-coller manuel de la version minimale :

Télécharger compose.yml

Modèle Synology DSM 7.2+ · variante openvino · entièrement commenté

Ou via wget directement en SSH sur le Synology :

bash
ssh admin@<Synology IP>
sudo -i
cd /volume1/docker/yunkan
wget https://yun-kan.com/compose/synology.yml -O compose.yml

Ou copier-coller (version minimale)

Si vous préférez ne pas utiliser wget, copiez le compose minimal ci-dessous, puis faites vi compose.yml, collez et enregistrez. Le fonctionnement est identique — seuls les commentaires détaillés sont omis.
yaml
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
      - ./recordings:/app/data/recordings
      - /etc/machine-id:/etc/machine-id:ro
      - /sys/class/dmi/id/product_uuid:/sys/class/dmi/id/product_uuid:ro
    environment:
      - TZ=Asia/Shanghai
      - SKYVIEW_SELF_CONTAINER_NAME=yunkan
compose.yml (minimal, à coller et enregistrer)

4. Démarrer SkyView

bash
cd /volume1/docker/yunkan
docker compose up -d
# Suivez les journaux de démarrage (Ctrl-C pour quitter) :
docker logs -f yunkan

Patientez environ 30 à 60 secondes que mediamtx + redis + api soient prêts, puis ouvrez http://<Synology IP>:23406/ dans le navigateur pour accéder à l'assistant de configuration.

5. Ports et règles de pare-feu

Sur Synology, les ports 80/443/5000/5001 sont utilisés par défaut par l'interface web de DSM ; SkyView utilise la famille de ports 23406 (décalée dans la plage 2xxxx) pour éviter les conflits. Si vous avez activé Panneau de configuration → Sécurité → Pare-feu, vous devez autoriser ces 5 ports :

  • 23406/tcp — Web + API SkyView (obligatoire)
  • 23880/tcp — Sortie RTSP directe (pour VLC / NVR tiers)
  • 24214/tcp — HLS (lecture + secours pour la vue en direct)
  • 24215/tcp — Signalisation WebRTC WHEP
  • 23515/udp — ICE WebRTC (UDP pour la vue en direct ; sans lui, le flux bascule automatiquement vers HLS, avec une latence de 2 à 4 s)

6. FAQ

L'interface de Container Manager ne permet pas de configurer le passthrough iGPU

Dans Container Manager, « Image → Exécuter → Périphérique » ne propose aucune option pour ajouter /dev/dri. Vous devez utiliser un fichier compose (ce guide) ou exécuter docker run --device /dev/dri:/dev/dri ... via SSH.

Repli OpenVINO iGPU sur les modèles DS920+ / N100

Certains noyaux Synology ont un support incomplet du pilote i915 pour Alder Lake-N, ce qui peut empêcher l'initialisation du plugin GPU OpenVINO → un repli automatique vers l'inférence CPU se produit alors. Si le journal de démarrage de la détection contient « GPU plugin failed, falling back to CPU », c'est le cas — les fonctionnalités restent opérationnelles, juste un peu plus lentes.

L'activation de la licence renvoie SLOTS_FULL

Sur certains modèles, product_uuid est vide dans le DMI, si bien que le conteneur lit une valeur vide. SkyView se rabat alors sur le calcul de l'empreinte à partir du seul /etc/machine-id, ce qui suffit généralement ; si l'activation échoue toujours, envoyez une capture d'écran du code d'erreur à support@yun-kan.com.

Mise à jour : DSM Container Manager restreint l'accès au socket docker, la mise à jour en ligne en un clic depuis la console web n'est donc pas disponible sur Synology (les correctifs incrémentaux ne sont pas affectés). Mettez à jour manuellement : docker compose pull && docker compose up -d --force-recreate yunkan.

Déploiement sur Synology DSM - Documentation SkyView