RK3576 Frigate NVR : installation

Dernière mise à jour:

Introduction

Frigate est un enregistreur vidéo réseau (NVR) open source conçu pour la vidéosurveillance locale et la détection d’objets. La plateforme reComputer RK3576 dispose d’un NPU Rockchip qui peut accélérer la détection avec le détecteur RKNN de Frigate, sous réserve d’un système d’exploitation et de pilotes compatibles.

Ce guide d’installation de Frigate NVR sur RK3576 utilise Docker Compose et l’image stable-rk sur Seeed Studio reComputer RK3576. Il couvre le stockage de la configuration et des médias, la première connexion administrateur et l’accès à l’interface web HTTPS.

Configuration matérielle et logicielle requise

ÉlémentExigence
MatérielKit de développement reComputer RK3576 ou appareil compatible basé sur RK3576
Système d’exploitationLinux 64 bits avec pilotes Rockchip pour l’accélération matérielle ultérieure
Environnement de conteneursDocker Engine et le plugin Docker Compose
RéseauAccès Internet pour télécharger l’image Frigate et PC sur le même réseau local pour ouvrir l’interface web
StockageEspace libre suffisant pour l’image, la configuration et les futurs enregistrements
CaméraNon requise pour l’installation et la vérification de l’interface web présentées ici

Pour utiliser ensuite l’accélération RKNN et RKMPP, le guide Rockchip de Frigate demande un noyau BSP Rockchip compatible et les pilotes nécessaires, notamment RKNPU et rkvdec2. L’ouverture de l’interface web ne valide pas à elle seule ces pilotes.

Étape 1 : Vérifier l’environnement RK3576

Connectez-vous au reComputer RK3576 en SSH, puis exécutez :

bash
uname -m
uname -r
cat /etc/os-release

docker --version
docker compose version

df -h

Vérifiez que la machine utilise Linux ARM 64 bits (aarch64) et que Docker et Docker Compose sont disponibles. Si Docker n’est pas installé, suivez les instructions officielles de Docker Engine adaptées à votre distribution avant de continuer.

Pour une intégration ultérieure du NPU, vous pouvez également examiner les périphériques et le pilote Rockchip :

bash
ls -l /dev/dri/
ls -l /dev/dma_heap/
sudo cat /sys/kernel/debug/rknpu/version

Les noms et la disponibilité des périphériques dépendent de l’image système. Toute erreur de ces commandes doit être examinée avant d’activer la détection accélérée matériellement ; elle n’empêche pas nécessairement le démarrage de l’interface web de base de Frigate.

Étape 2 : Créer le répertoire du projet

Créez des répertoires distincts pour la configuration et le stockage des médias :

bash
mkdir -p ~/frigate-rk/config ~/frigate-rk/storage
cd ~/frigate-rk

La structure du projet est la suivante :

text
frigate-rk/
├── docker-compose.yml
├── config/
└── storage/

Le répertoire config conserve la configuration et la base de données de Frigate. Le répertoire storage est réservé aux enregistrements et aux captures. Pour un enregistrement à long terme, envisagez un SSD ou un disque NVMe plutôt que le stockage eMMC.

Étape 3 : Configurer Docker Compose

Créez un fichier Compose :

bash
nano docker-compose.yml

Ajoutez cette configuration de démarrage initial :

yaml
services:
  frigate:
    container_name: frigate
    image: ghcr.io/blakeblackshear/frigate:stable-rk
    restart: unless-stopped
    stop_grace_period: 30s

    # For initial Rockchip hardware compatibility testing only.
    privileged: true

    # Example allocation for initial testing; recalculate when adding cameras.
    shm_size: "256mb"

    volumes:
      - /etc/localtime:/etc/localtime:ro
      - ./config:/config
      - ./storage:/media/frigate
      - type: tmpfs
        target: /tmp/cache
        tmpfs:
          size: 1000000000

    ports:
      - "8971:8971"

Remarques :

  • Utilisez le tag propre à Rockchip stable-rk plutôt que l’image générique stable.
  • privileged: true est temporaire pour la mise en service initiale du matériel. Remplacez-le par les mappages de périphériques et les permissions minimales nécessaires avant la mise en production.
  • La mémoire partagée 256mb est un exemple, pas un résultat de benchmark. Avant d’ajouter des caméras, calculez la valeur appropriée avec le calculateur SHM de Frigate, selon la résolution du flux de détection et le nombre de caméras.
  • Seul le port 8971 est publié pour ce premier test de l’interface web. Les ports RTSP/WebRTC pourront être ajoutés plus tard si nécessaire. Gardez l’appareil sur un réseau local de confiance.

Vérifiez la syntaxe du fichier Compose :

bash
sudo docker compose config -q

L’absence de sortie indique que la validation du fichier Compose a réussi.

Étape 4 : Télécharger et démarrer Frigate

Depuis le répertoire du projet, exécutez :

bash
cd ~/frigate-rk
sudo docker compose pull
sudo docker compose up -d

Mot de passe administrateur initial : Frigate crée automatiquement le compte admin avec un mot de passe aléatoire au premier démarrage. Le mot de passe est affiché dans les journaux lors de la création du compte ; il n’existe pas de mot de passe par défaut universel, et un redémarrage normal du conteneur ne régénère pas ce mot de passe initial. Récupérez-le et conservez-le en lieu sûr immédiatement après le premier démarrage, avant d’ouvrir l’interface web.

Consultez les journaux dès que le conteneur démarre :

bash
sudo docker logs frigate 2>&1 | grep -iE 'password|admin'

Si une entrée correspondante apparaît, conservez le mot de passe généré de manière confidentielle. Si le filtre ne renvoie rien, consultez le journal de démarrage original plutôt que de supposer un mot de passe par défaut :

bash
sudo docker logs frigate 2>&1 | less

Si les journaux accessibles ne contiennent plus le mot de passe initial, consultez la documentation officielle d’authentification et de récupération. Ne supprimez pas le dossier config ni la base de données pour recommencer l’installation.

Vérifiez l’état du conteneur :

bash
sudo docker ps --filter name=frigate

Le conteneur Frigate doit être en cours d’exécution.

Étape 5 : Ouvrir l’interface web Frigate

Recherchez l’adresse IP locale du RK3576 :

bash
hostname -I

Ouvrez l’URL suivante depuis un ordinateur sur le même réseau :

text
https://<RK3576_IP>:8971

Frigate utilise par défaut un certificat HTTPS autosigné. Même pour un appareil dont vous avez vérifié l’identité sur votre réseau local, le navigateur peut indiquer que le certificat n’est pas fiable. Cet avertissement concerne la chaîne de confiance du certificat, et non l’installation de Docker. Configurez un certificat reconnu pour la production ou l’accès à distance.

Se connecter avec le compte administrateur

Saisissez :

  • Username : admin
  • Password : le mot de passe aléatoire conservé depuis les journaux du premier démarrage

Page de connexion administrateur Frigate sur reComputer RK3576

Après la connexion, modifiez le mot de passe administrateur dans Settings → Users.

Étape 6 : Vérifier le tableau de bord Frigate

Si aucune caméra n’a été ajoutée, le tableau de bord affiche No Cameras Configured et le bouton Add Camera. Ce comportement est normal à ce stade.

Tableau de bord Frigate affichant No Cameras Configured et System is healthy

Cet écran confirme l’accès à l’interface web et la réponse du conteneur Frigate. L’entrée des caméras, l’enregistrement, la détection RKNN et le décodage RKMPP doivent être configurés et vérifiés séparément.