Si Frigate et Ollama s’exécutent dans des conteneurs Docker distincts sur le même hôte ZimaOS, localhost:11434 dans Frigate renvoie vers le conteneur Frigate, et non vers Ollama. Placez les deux services sur un réseau Docker partagé et utilisez le nom du service Ollama, ou publiez Ollama sur une adresse de l’hôte accessible par Frigate.
Le fil de discussion source n’est jamais parvenu à une configuration finale vérifiée, mais il a établi la bonne méthode de diagnostic : commencez par vérifier l’accessibilité réseau depuis le conteneur Frigate, puis examinez la configuration genai: de Frigate. La documentation actuelle de Frigate exige également un modèle capable de vision pour les descriptions d’images et d’événements.
Pourquoi localhost ne fonctionne pas entre les conteneurs
Chaque conteneur Docker normal possède son propre espace de noms réseau. Dans Frigate :
http://localhost:11434
signifie « le port 11434 à l’intérieur du conteneur Frigate ». Cela ne désigne pas l’hôte ZimaOS et ne se résout pas automatiquement vers le conteneur Ollama.
Configuration recommandée : réseau Docker partagé
Placez Frigate et Ollama sur le même réseau Docker défini par l’utilisateur et utilisez un nom de service ou de conteneur stable, par exemple :
genai:
provider: ollama
base_url: http://ollama:11434
model: qwen3-vl:4b
Le guide actuel de Frigate sur l’IA générative documente le fournisseur Ollama et exige un modèle de vision adapté pour les descriptions GenAI.
Étape 1 : vérifier les conteneurs et les réseaux depuis l’hôte ZimaOS
Exécutez cette commande depuis le terminal de l’hôte ZimaOS, et non depuis Frigate :
docker ps --format 'table {.Names} {.Image} {.Networks}' | grep -Ei 'NAMES|frigate|ollama'
L’utilisateur source a exécuté par erreur une commande Docker à l’intérieur du conteneur Frigate et a obtenu docker: not found. C’est normal : les conteneurs ne contiennent généralement pas l’interface de ligne de commande Docker de l’hôte et ne la contrôlent pas.
Étape 2 : tester Ollama depuis Frigate
Une fois les noms des conteneurs et des réseaux connus, testez le chemin HTTP réel. Depuis l’hôte :
docker exec -it frigate sh
wget -qO- http://ollama:11434/api/tags
Si la réponse répertorie les modèles Ollama, le réseau fonctionne. Si le nom ollama ne peut pas être résolu, les conteneurs ne partagent probablement pas le même réseau. S’il est résolu mais que la connexion est refusée, vérifiez l’écoute, la liaison et l’état du port d’Ollama.
Alternative : utiliser l’adresse IP de l’hôte ZimaOS
Si Ollama publie le port 11434 sur l’hôte, Frigate peut utiliser une adresse de l’hôte accessible sur le réseau local, par exemple :
base_url: http://192.168.1.20:11434
Cette méthode est simple, mais elle fait transiter le trafic par l’hôte au lieu d’utiliser la découverte de services Docker. Assurez-vous qu’Ollama écoute réellement sur une interface accessible depuis le conteneur Frigate.
Utiliser un modèle Ollama capable de vision
La connectivité réseau seule ne suffit pas. La fonctionnalité GenAI actuelle de Frigate envoie un contexte visuel ; le modèle configuré doit donc prendre en charge la vision. Un modèle Ollama limité au texte peut répondre aux tests de l’API tout en étant inadapté aux descriptions d’événements de caméra.
N’utilisez pas host.docker.internal partout
host.docker.internal est pratique avec Docker Desktop, mais son comportement n’est pas garanti comme identique sur tous les hôtes Docker Linux. Sur ZimaOS, un réseau défini par l’utilisateur associé au nom du service est généralement plus portable.
Vérifier la configuration de Frigate une fois le réseau fonctionnel
Ce n’est qu’après la réussite de /api/tags que vous devez vous concentrer sur l’indentation YAML, le nom du fournisseur, le nom du modèle et les paramètres de la fonctionnalité GenAI. Redémarrez Frigate et consultez les journaux pour vérifier l’initialisation du fournisseur.
Le guide sur la mise en réseau Docker présente plus largement le fonctionnement des réseaux de conteneurs.
FAQ
Pourquoi localhost:11434 ne fonctionne-t-il pas depuis Frigate ?
Parce que localhost dans Frigate désigne le conteneur Frigate lui-même, et non le conteneur Ollama.
Quelle est la meilleure URL Ollama ?
Sur un réseau Docker partagé, utilisez le nom du service ou du conteneur Ollama, par exemple http://ollama:11434.
Pourquoi docker exec indique-t-il que docker est introuvable ?
Vous avez probablement exécuté l’interface de ligne de commande Docker à l’intérieur d’un conteneur. Exécutez les commandes de gestion Docker depuis le terminal de l’hôte ZimaOS.
N’importe quel modèle Ollama peut-il fonctionner avec Frigate GenAI ?
Non. La documentation actuelle de Frigate indique que le flux GenAI nécessite un modèle capable de vision.
