Communityoplossing

Frigate kan Ollama op ZimaOS niet bereiken: oplossing voor Docker-netwerk

A Frigate GenAI setup could not initialize Ollama; the thread established that container-to-container reachability must be tested from the ZimaOS host first.

Als Frigate en Ollama in afzonderlijke Docker-containers op dezelfde ZimaOS-host draaien, verwijst localhost:11434 binnen Frigate naar de Frigate-container, niet naar Ollama. Plaats beide services op een gedeeld Docker-netwerk en gebruik de servicenaam van Ollama, of publiceer Ollama op een hostadres dat Frigate kan bereiken.

De brondiscussie kwam nooit tot een geverifieerde definitieve configuratie, maar stelde wel de juiste diagnostische aanpak vast: bewijs eerst dat de Frigate-container netwerktoegang heeft en los daarna problemen met de genai:-configuratie op. De huidige Frigate-documentatie vereist ook een model met vision-ondersteuning voor afbeeldings- en gebeurtenisbeschrijvingen.

Waarom localhost niet werkt tussen containers

Elke normale Docker-container heeft een eigen netwerknaamruimte. Binnen Frigate betekent:

http://localhost:11434

“poort 11434 binnen de Frigate-container”. Het verwijst niet naar de ZimaOS-host en wordt niet automatisch omgezet naar de Ollama-container.

Beste configuratie: een gedeeld Docker-netwerk

Plaats Frigate en Ollama op hetzelfde door de gebruiker gedefinieerde Docker-netwerk en gebruik een stabiele service- of containernaam, zoals:

genai:
  provider: ollama
  base_url: http://ollama:11434
  model: qwen3-vl:4b

De huidige Frigate-handleiding voor generatieve AI beschrijft de Ollama-provider en vereist een geschikt vision-model voor GenAI-beschrijvingen.

Stap 1: controleer de containers en netwerken vanaf de ZimaOS-host

Voer dit uit in de terminal van de ZimaOS-host, niet binnen Frigate:

docker ps --format 'table {.Names}	{.Image}	{.Networks}' | grep -Ei 'NAMES|frigate|ollama'

De gebruiker uit de bron voerde per ongeluk een Docker-opdracht uit binnen de Frigate-container en kreeg docker: not found. Dat is te verwachten: containers bevatten of beheren normaal gesproken niet de Docker-CLI van de host.

Stap 2: test Ollama vanuit Frigate

Test, zodra je de containernamen en netwerken kent, het daadwerkelijke HTTP-pad. Voer dit uit op de host:

docker exec -it frigate sh
wget -qO- http://ollama:11434/api/tags

Als het antwoord Ollama-modellen vermeldt, werkt de netwerkverbinding. Als ollama niet kan worden gevonden, delen de containers waarschijnlijk niet hetzelfde netwerk. Als de naam wel wordt gevonden maar de verbinding wordt geweigerd, controleer dan of Ollama luistert, aan welke interface het is gekoppeld en wat de poortstatus is.

Alternatief: gebruik het IP-adres van de ZimaOS-host

Als Ollama poort 11434 naar de host publiceert, kan Frigate een vanaf het LAN bereikbaar hostadres gebruiken, zoals:

base_url: http://192.168.1.20:11434

Dit is eenvoudig, maar leidt het verkeer via de host in plaats van Docker-servicedetectie te gebruiken. Zorg ervoor dat Ollama daadwerkelijk luistert op een interface die vanuit de Frigate-container bereikbaar is.

Gebruik een Ollama-model met vision-ondersteuning

Netwerkconnectiviteit alleen is niet voldoende. De huidige GenAI-functie van Frigate verstuurt visuele context, dus het geconfigureerde model moet vision ondersteunen. Een tekstmodel van Ollama kan wel reageren op API-tests, maar toch ongeschikt zijn voor beschrijvingen van cameragebeurtenissen.

Gebruik niet overal host.docker.internal

host.docker.internal is handig in Docker Desktop, maar werkt niet gegarandeerd hetzelfde op elke Linux-Dockerhost. Een gedeeld, door de gebruiker gedefinieerd netwerk met een servicenaam is doorgaans beter overdraagbaar op ZimaOS.

Controleer de Frigate-configuratie nadat het netwerk werkt

Richt je pas op YAML-inspringing, de providernaam, de modelnaam en de GenAI-functie-instellingen nadat /api/tags succesvol reageert. Start Frigate opnieuw en controleer de logboeken op initialisatie van de provider.

De handleiding voor Docker-netwerken biedt een uitgebreider overzicht van het netwerkmodel voor containers.

Veelgestelde vragen

Waarom werkt localhost:11434 niet vanuit Frigate?

Omdat localhost binnen Frigate naar de Frigate-container zelf verwijst, niet naar de Ollama-container.

Wat is de beste Ollama-URL?

Gebruik op een gedeeld Docker-netwerk de service- of containernaam van Ollama, zoals http://ollama:11434.

Waarom meldt docker exec dat docker niet is gevonden?

Je hebt waarschijnlijk de Docker-CLI binnen een container uitgevoerd. Voer Docker-beheeropdrachten uit in de terminal van de ZimaOS-host.

Kan elk Ollama-model met Frigate GenAI werken?

Nee. Volgens de huidige Frigate-documentatie vereist de GenAI-workflow een model met vision-ondersteuning.