Jeśli Frigate i Ollama działają w osobnych kontenerach Docker na tym samym hoście ZimaOS, localhost:11434 wewnątrz Frigate wskazuje z powrotem na kontener Frigate — a nie na Ollama. Umieść obie usługi we wspólnej sieci Docker i użyj nazwy usługi Ollama albo udostępnij Ollama pod adresem hosta, do którego Frigate może się połączyć.
Wątek źródłowy nie doprowadził do zweryfikowanej konfiguracji końcowej, ale ustalił prawidłową ścieżkę diagnostyczną: najpierw potwierdź dostępność sieciową z kontenera Frigate, a następnie sprawdź konfigurację genai: w Frigate. Aktualna dokumentacja Frigate wymaga również modelu obsługującego wizję do tworzenia opisów obrazów i zdarzeń.
Dlaczego localhost nie działa między kontenerami
Każdy zwykły kontener Docker ma własną przestrzeń nazw sieci. Wewnątrz Frigate:
http://localhost:11434
oznacza „port 11434 wewnątrz kontenera Frigate”. Nie oznacza hosta ZimaOS i nie wskazuje automatycznie na kontener Ollama.
Najlepsza konfiguracja: wspólna sieć Docker
Umieść Frigate i Ollama w tej samej niestandardowej sieci Docker i użyj stabilnej nazwy usługi lub kontenera, takiej jak:
genai:
provider: ollama
base_url: http://ollama:11434
model: qwen3-vl:4b
Aktualny przewodnik Frigate Generative AI opisuje dostawcę Ollama i wymaga odpowiedniego modelu obsługującego wizję do tworzenia opisów GenAI.
Krok 1: Sprawdź kontenery i sieci z hosta ZimaOS
Uruchom to w terminalu hosta ZimaOS, a nie wewnątrz Frigate:
docker ps --format 'table {.Names} {.Image} {.Networks}' | grep -Ei 'NAMES|frigate|ollama'
Użytkownik w źródłowym wątku przypadkowo uruchomił polecenie Docker wewnątrz kontenera Frigate i otrzymał komunikat docker: not found. Jest to oczekiwane: kontenery zwykle nie zawierają interfejsu wiersza poleceń Docker ani nie sterują Dockerem hosta.
Krok 2: Przetestuj Ollama z wnętrza Frigate
Gdy znasz już nazwy kontenerów i sieci, przetestuj rzeczywistą ścieżkę HTTP. Z hosta:
docker exec -it frigate sh
wget -qO- http://ollama:11434/api/tags
Jeśli odpowiedź zawiera listę modeli Ollama, sieć działa. Jeśli nie można rozpoznać nazwy ollama, kontenery prawdopodobnie nie są podłączone do tej samej sieci. Jeśli nazwa jest rozpoznawana, ale połączenie zostaje odrzucone, sprawdź nasłuchiwanie i powiązanie Ollama oraz stan portu.
Alternatywa: użyj adresu IP hosta ZimaOS
Jeśli Ollama udostępnia port 11434 na hoście, Frigate może użyć osiągalnego w sieci LAN adresu hosta, takiego jak:
base_url: http://192.168.1.20:11434
Jest to proste rozwiązanie, ale kieruje ruch przez hosta zamiast korzystać z wykrywania usług Docker. Upewnij się, że Ollama rzeczywiście nasłuchuje na interfejsie dostępnym z kontenera Frigate.
Użyj modelu Ollama obsługującego wizję
Sama łączność sieciowa nie wystarczy. Aktualna funkcja GenAI we Frigate przesyła kontekst wizualny, dlatego skonfigurowany model musi obsługiwać wizję. Tekstowy model Ollama może odpowiadać na testy API, a mimo to nie nadawać się do opisywania zdarzeń z kamer.
Nie używaj wszędzie host.docker.internal
host.docker.internal jest wygodne w Docker Desktop, ale nie ma gwarancji, że będzie działać identycznie na każdym hoście Docker z systemem Linux. Wspólna niestandardowa sieć z nazwą usługi jest zwykle bardziej przenośna w ZimaOS.
Po uruchomieniu sieci sprawdź konfigurację Frigate
Dopiero gdy /api/tags działa, skup się na wcięciach YAML, nazwie dostawcy, nazwie modelu i ustawieniach funkcji GenAI. Uruchom ponownie Frigate i sprawdź w logach inicjalizację dostawcy.
Przewodnik po sieciach Docker przedstawia szerszy model działania sieci kontenerów.
Najczęściej zadawane pytania
Dlaczego localhost:11434 nie działa z Frigate?
Ponieważ localhost wewnątrz Frigate oznacza sam kontener Frigate, a nie kontener Ollama.
Jaki adres Ollama jest najlepszy?
W przypadku wspólnej sieci Docker użyj nazwy usługi lub kontenera Ollama, na przykład http://ollama:11434.
Dlaczego docker exec informuje, że nie znaleziono polecenia docker?
Prawdopodobnie uruchomiono interfejs wiersza poleceń Docker wewnątrz kontenera. Polecenia zarządzania Dockerem uruchamiaj w terminalu hosta ZimaOS.
Czy dowolny model Ollama może działać z Frigate GenAI?
Nie. Aktualna dokumentacja Frigate stwierdza, że przepływ GenAI wymaga modelu obsługującego wizję.
