Installation
SkyView est distribué sous forme d'une image Docker unique, et une seule commande suffit pour démarrer le service. Ce chapitre couvre les prérequis système, le choix d'une variante, la commande d'installation, le mappage des ports/volumes, les mises à jour et la désinstallation.
Prérequis système
| Élément | Minimum | Recommandé |
|---|---|---|
| Système d'exploitation | Noyau Linux ≥ 5.x (Ubuntu 22.04+ / Debian 12+) | Ubuntu 24.04 LTS |
| CPU | 4 cœurs x86_64 (ou RK3588 ARM64) | 8 cœurs ou plus |
| Mémoire | 4 Go | 8 à 16 Go (flux multiples + détection IA) |
| Disque | 64 Go (enregistrement seul) | 1 To+ HDD (à dimensionner selon la durée de rétention) |
| Docker | 20.10+ | Dernière version stable |
| GPU (optionnel) | Aucun | iGPU Intel 11e génération+ / NVIDIA série 30+ |
Architectures prises en charge : x86_64 et RK3588
Choisir une variante d'image
L'accélération matérielle pour la détection IA se décline en 4 variantes selon le matériel. Choisir la mauvaise variante ne fait que ralentir ou désactiver la détection ; tout le reste (enregistrement, lecture, audio bidirectionnel) n'est pas affecté. Le script d'installation en une ligne détecte automatiquement votre matériel et choisit la bonne variante pour vous — le tableau ci-dessous n'est qu'une référence pour ceux qui souhaitent choisir manuellement.
| Tag d'image | Matériel adapté | Remarques |
|---|---|---|
cpu | CPU uniquement | Solution universelle de repli, performances moyennes, convient pour 2 à 4 flux à 5 im/s |
openvino | CPU / iGPU / NPU Intel | 11e génération Core et plus, meilleur rapport qualité/prix |
cuda | GPU NVIDIA | Nécessite nvidia-container-toolkit, série GTX 16 et plus |
trt | GPU NVIDIA + ≥ 8 Go de VRAM (le plus rapide) | Plus rapide que cuda, mais le démarrage échoue avec moins de 8 Go de VRAM ; le premier lancement effectue une optimisation ponctuelle du modèle d'environ 3 minutes |
Choisir un palier selon le matériel (référence détaillée)
Lors de l'achat d'une nouvelle machine ou de l'évaluation d'une machine existante, utilisez les 5 paliers ci-dessous, regroupés selon la puissance du CPU. Chacun indique l'image recommandée, le nombre de caméras qu'il peut gérer de façon fiable, et les fonctionnalités de détection IA qu'il peut exécuter sans à-coups (vous les activez toujours manuellement dans la console web).
| Palier | Exemple de matériel | Caméras | Image recommandée | Positionnement en une phrase |
|---|---|---|---|---|
| Entrée de gamme | Celeron J4125 / J4105 / J4025 (ancien Atom) | 1 flux | cpu | Matériel ancien / de récupération à petit prix — juste assez pour fonctionner |
| Débutant à la maison | N100 / N97 / N95 (Alder Lake-N 4 cœurs) | 1 à 2 flux | openvino | Usage domestique courant, palier d'entrée avantageux |
| Aide aux aînés | N150 / N250 / N305 | 1 à 3 flux | openvino | Le minimum requis pour activer la détection de chute |
| Multi-caméras | i5 / i7 11e-13e génération + iGPU Iris Xe (80EU+) | 2 à 4 flux | openvino | Un plafond raisonnable pour de nombreuses caméras + détection sur toute la maison |
| Fonctionnalités complètes / usage commercial | GPU dédié NVIDIA GTX 1060 / RTX 2060 ou supérieur | 4+ flux | cuda (avec ≥ 8 Go de VRAM, vous pouvez passer à trt pour un gain de vitesse d'environ 2×) | Peut tout activer — gestes, pleurs de bébé, et plus encore |
Fonctionnalités de détection que chaque palier peut exécuter sans à-coups
Les paliers supérieurs peuvent activer davantage de fonctionnalités de façon fiable. Sur un palier bas, activer trop de fonctionnalités fait prendre du retard à l'inférence par rapport à la fréquence d'images de la caméra et fait manquer des événements. Le tableau ci-dessous indique les capacités de détection recommandées pour chaque palier — ✅ signifie recommandé, ❌ signifie déconseillé sur ce matériel. Une installation neuve n'active par défaut que la détection d'objets ; tout le reste doit être activé manuellement dans la console web → Paramètres → Détection, selon les besoins.
| Fonctionnalité de détection | Entrée de gamme J4125 | Domestique N100 | Aînés N150 | Multi-caméras Iris Xe | Complet NVIDIA |
|---|---|---|---|---|---|
| Détection de mouvement | ✅ | ✅ | ✅ | ✅ | ✅ |
| Reconnaissance faciale | ✅ | ✅ | ✅ | ✅ | ✅ |
| Détection d'objets (personne/véhicule/animal/etc.) | ❌ | ✅ | ✅ | ✅ | ✅ |
| Détection de chute | ❌ | ❌ | ✅ | ✅ | ✅ |
| Reconnaissance de plaques d'immatriculation | ❌ | ❌ | ❌ | ✅ | ✅ |
| Reconnaissance de gestes | ❌ | ❌ | ❌ | ❌ | ✅ |
| Détection de pleurs de bébé | ❌ | ❌ | ❌ | ❌ | ✅ |
Configurez au moins un flux secondaire
Avec de nombreuses caméras, désactivez la détection sur celles qui ne sont pas critiques
Déploiement en une ligne (recommandé)
Exécutez une seule commande et le script détecte automatiquement votre matériel, choisit la variante d'image la mieux adaptée, télécharge l'image et démarre le conteneur — 5 à 15 minutes de bout en bout selon votre connexion.
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh | bashVous voulez examiner le script avant de l'exécuter
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh -o install.sh, puis cat install.sh pour le lire, puis bash install.sh. Vous pouvez aussi ajouter --detect-only pour que le script se contente de sonder le matériel et de recommander une variante sans réellement déployer.Ce que fait le script :
- Vérifie que le système est Linux x86_64 avec Docker installé
- Vérifie que les ports tels que
23406 / 23880 / 24214 / 24215 / 23515sont libres - Sonde le matériel : GPU NVIDIA (y compris la VRAM) / iGPU Intel / NPU Intel
- Choisit automatiquement la variante d'image la mieux adaptée parmi cpu / openvino / cuda / trt
- Télécharge l'image (depuis Aliyun par défaut) + écrit un fichier docker-compose + génère automatiquement un secret aléatoire fort
- Démarre le conteneur et attend que le contrôle de santé passe (environ 60 secondes)
- Affiche l'URL du navigateur (par exemple
http://192.168.1.10:23406/)
Le script ne touchera pas à votre système
Options courantes
| Option | Utilité |
|---|---|
--variant cpu/openvino/cuda/trt | Forcer une variante d'image précise au lieu de la sélection automatique |
--detect-only | Se contenter de détecter le matériel + recommander une variante, sans déployer réellement |
--offline image.tar.gz | Déploiement hors ligne par paquet (sans accès internet) |
--data-dir /path | Répertoire d'état personnalisé (base de données / cookies / journaux, par défaut ~/skyview/data) |
--recordings-dir /path | Diriger les enregistrements vers un disque volumineux / NAS séparément (par défaut ~/skyview/recordings, à côté de data ; les enregistrements peuvent atteindre l'échelle du To) |
--registry <url> | Utiliser un registre d'images privé |
--version 0.6.0 | Télécharger une version précise (par défaut la dernière) |
-y ou --yes | Mode non interactif |
# Afficher uniquement la variante recommandée, sans déployer
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh | bash -s -- --detect-only
# Forcer la variante trt et ignorer les invites
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh | bash -s -- --variant trt -y
# Déploiement hors ligne (copiez d'abord l'archive tar.gz de l'image sur la machine via scp)
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh -o install.sh
bash install.sh --offline /path/to/skyview-image.tar.gzBesoin d'un accès via un domaine public
http://<IP du serveur>:23406 dans le navigateur.Déploiement par plateforme (choisissez votre appareil)
Le script en une ligne est le plus simple sur un environnement Linux + Docker générique, mais les NAS, HA OS, PVE et plateformes similaires ont chacun leur propre interface de gestion de conteneurs, leur mode réseau, leur méthode de passthrough iGPU et leurs pièges connus. Voici des guides dédiés pour les plateformes cibles courantes, incluant le fichier compose spécifique à chaque plateforme, le chemin de déploiement via l'interface, la configuration du pare-feu et les questions fréquentes :
- Synology DSM 7.2+ — Container Manager + modèles à iGPU Intel (DS920+ / DS423+ / DS224+, etc.)
- Unraid 6.12+ — Compose Manager + plugin Intel GPU TOP / NVIDIA Driver
- fnOS — base Debian 12 + iGPU intégré sur N100/N305
- UGREEN UGOS Pro — modèles x86 (DXP2800/DXP4800/DXP6800, etc.)
- TrueNAS Scale 24.10+ — YAML d'application personnalisée + persistance de dataset ZFS
- Ubuntu / Debian — apt + docker compose v2, le chemin de déploiement le plus simple
- Fedora 39+ — dnf docker-ce + étiquettes de volume SELinux + règles firewalld
- Proxmox VE LXC — LXC privilégié + passthrough iGPU Intel (choix numéro un pour les utilisateurs PVE N100 / N305 à domicile)
- Module complémentaire Home Assistant OS — ajoutez le dépôt SkyView et installez en un clic le module yunkan / yunkan-openvino
- Carte RK3588 — un mini boîtier ARM basse consommation avec accélération NPU Rockchip (Orange Pi 5 / Radxa Rock 5, etc.) ; carte 4 Go recommandée, 8 Go+ expérimental
Vous ne trouvez pas votre plateforme ?
apt install par le gestionnaire de paquets approprié). Pour les systèmes basés sur SELinux (CentOS / Rocky / Alma), suivez la gestion des étiquettes de volume :Z du guide Fedora.Déploiement manuel (avancé)
Si vous souhaitez contrôler le processus étape par étape, suivez les 4 étapes ci-dessous. Le script en une ligne n'est essentiellement que ces commandes automatisées.
- 1
Télécharger l'image
Choisissez l'une des quatre variantes ci-dessus :
bashdocker pull registry.cn-hangzhou.aliyuncs.com/yunkan/yunkan-cpu:latest - 2
Créer les répertoires data / recordings
Les petites données d'état (base de données / cookies / journaux) résident dans
data/; les enregistrements (pouvant atteindre l'échelle du To) vont dans un répertoirerecordings/voisin, afin que vous puissiez les diriger séparément vers un disque volumineux / NAS.bashmkdir -p ~/skyview/data ~/skyview/recordings && cd ~/skyview - 3
Démarrer le conteneur
Utilisez le mode réseau hôte pour que les caméras atteignent directement les ports de l'hôte, évitant que le NAT ne dégrade la qualité vidéo. La liaison de licence nécessite de monter
/etc/machine-idetproduct_uuid— ne les omettez pas.bashdocker run -d --name yunkan --restart=always \ --network host \ -v $(pwd)/data:/app/data \ -v $(pwd)/recordings:/app/data/recordings \ -v /etc/machine-id:/etc/machine-id:ro \ -v /sys/class/dmi/id/product_uuid:/sys/class/dmi/id/product_uuid:ro \ registry.cn-hangzhou.aliyuncs.com/yunkan/yunkan-cpu:latest - 4
Ouvrir le navigateur
La première visite mène à l'assistant
/setup; poursuivez avec le chapitre Premier lancement.http://<IP du serveur>:23406
Les informations matérielles doivent être montées
Ports et mappage des volumes
SkyView fonctionne en mode réseau hôte, donc tous les ports sont liés directement sur l'hôte. Les ports de production utilisent un décalage inhabituel dans la plage 2xxxx pour éviter les conflits avec un nginx existant sur 80/443, redis sur 6379, ou d'autres services sur 8080/8554/8888.
| Port | Utilité | Requis ? |
|---|---|---|
| 23406 / TCP | Console web + API de l'application | Requis (peut aussi être placé derrière un proxy inverse pour le HTTPS) |
| 23880 / TCP | Sortie RTSP directe (pour VLC / NVR tiers) | Optionnel |
| 24214 / TCP | Lecture + vue en direct de secours | Recommandé |
| 24215 / TCP | Vue en direct (signalisation du canal à faible latence) | Recommandé |
| 23515 / UDP | Vue en direct (audio/vidéo du canal à faible latence) | Recommandé ; sans lui, le flux repasse automatiquement sur 24214 (la latence passe à 2-4 s) |
| Chemin dans le conteneur | Utilité | Recommandation |
|---|---|---|
/app/data | Petites données d'état : base de données / configuration / cookies / journaux | À monter obligatoirement, persiste entre les conteneurs |
/app/data/recordings | Enregistrements (échelle du To, imbriqué sous /app/data) | À monter obligatoirement, peut pointer vers un disque volumineux / NAS ; les modèles sont intégrés à l'image, aucun montage nécessaire |
/etc/machine-id | Empreinte matérielle 1/2 | À monter obligatoirement en lecture seule |
/sys/class/dmi/id/product_uuid | Empreinte matérielle 2/2 | À monter obligatoirement en lecture seule |
Mise à niveau
Le plus simple : mise à niveau en un clic depuis la console web. Ouvrez Console web → Paramètres → Système → Rechercher les mises à jour, puis cliquez sur « Mettre à niveau » lorsqu'une nouvelle version apparaît : le système télécharge la nouvelle image et recrée le conteneur automatiquement (la base de données est sauvegardée au préalable, et si la nouvelle version ne démarre pas, un retour arrière automatique est effectué). La page se reconnecte à la nouvelle version en quelques minutes.
Vous pouvez aussi mettre à niveau manuellement via SSH :
cd ~/skyview
docker compose -f compose.yml pull
docker compose -f compose.yml up -dOu relancez le script en une ligne (avec -y pour ignorer les invites) :
curl -fsSL https://cdn.yun-kan.com/yunkan-install.sh | bash -s -- -yLes données migrent automatiquement
tar -czf data-backup-$(date +%F).tar.gz data/.Désinstallation
cd ~/skyview
docker compose -f compose.yml down
docker rmi registry.cn-hangzhou.aliyuncs.com/yunkan/yunkan-cpu:latest
# Les enregistrements / la base de données sont conservés ; pour un nettoyage complet :
rm -rf ~/skyviewLa suppression du répertoire de données est irréversible