Gemenskapslösning

Åtgärda ZimaOS Docker-containrar som inte kan hitta varandra

A ZimaOS media stack could reach containers by changing IP addresses but not by stable names such as transmission. The thread identified the default Docker bridge DNS limitation, then exposed a ZimaOS WebUI synchronization and network-label issue around custom bridges.

Om Sonarr, Radarr, Lidarr, Transmission eller andra containrar i ZimaOS kan nå varandra via IP-adress men inte använda stabila namn som transmission:9091, är problemet vanligtvis namnupplösning snarare än grundläggande anslutning mellan containrar. Den skillnaden blev det viktigaste resultatet i denna IceWhale Community-tråd från november 2025.

Dockers standard- bridge nätverket tillhandahåller inte automatisk DNS för containernamn på samma sätt som en användardefinierad brygga. Tråden avslöjade sedan ytterligare en ZimaOS-specifik komplikation: manuellt skapade bryggnätverk kunde finnas i Docker innan de visades korrekt i ZimaOS webbgränssnitt, och gränssnittet kunde avvisa annars giltiga Docker-nätverk på grund av förväntade Compose-etiketter.

Det viktigaste symptomet: IP fungerar, men containernamnet fungerar inte

Den ursprungliga användaren ville att Radarr skulle nå Transmission med:

http://transmission:9091

Container-IP-adresser ändrades efter omstarter eller uppdateringar, så det var opålitligt att hårdkoda dem. Containrarna kunde nå varandra via IP, men anrop baserade på värdnamn misslyckades.

Radarrs anslutningstest försöker nå Transmission via containerns värdnamn i ZimaOS
Det ursprungliga problemet var inte bristande IP-anslutning; Radarr kunde inte pålitligt hitta Transmission via ett stabilt Docker-namn.

Varför Dockers standardbrygga inte löser detta

Dockers aktuella dokumentation om bryggnätverk säger att containrar på standardbryggan kan kommunicera via IP, medan användardefinierade bryggor ger automatisk DNS-upplösning mellan containrar.

Så ”alla appar använder bridge” betyder inte nödvändigtvis att de använder en namngiven, användardefinierad brygga med Dockers inbyggda DNS.

Skapa en användardefinierad brygga

sudo -i
docker network create media-net

Containrar som är anslutna till samma användardefinierade brygga kan normalt hitta varandra via containernamn eller nätverksalias.

Aktuell dokumentation för ZimaOS använder samma mönster

Aktuell dokumentation för ZimaSpace använder uttryckligen ett anpassat nätverk i sin Zabbix-guide, eftersom standardbryggan inte ger det önskade DNS-beteendet mellan containrar:

sudo docker network create zabbix-net

Se den aktuella installationsguiden för ZimaOS Zabbix.

Det ZimaOS-specifika problemet: Synkronisering av WebUI

I källtråden gjorde skapandet av en anpassad brygga via Docker eller Portainer inte nätverket omedelbart användbart i ZimaOS-appens inställningar. Användarna såg fel som:

network internal-network was found but has incorrect label
com.docker.compose.network set to ""

Efter tester tillsammans med en ingenjör sade Zima-Giorgio att själva Docker-nätverket fungerade normalt, men att WebUI kunde vara osynkroniserat med Docker-backend.

Steget som bekräftades av gemenskapen: Starta om efter att nätverket har skapats

sudo -i
docker network create net-a
docker network create net-b
starta om

Efter omstarten visades de nyskapade nätverken i appens inställningspanel. En annan deltagare bekräftade att den uteblivna omstarten var det avgörande steget i testet och att namnuppslagningen fungerade på den anpassade bryggan därefter.

ZimaOS-instrumentpanel som visar anpassade Docker-bryggnätverk efter en systemomstart
Gemenskapstestet visade att anpassade nätverk visades i ZimaOS efter att WebUI hade synkroniserats igen vid omstart.

Standard-Docker kräver normalt inte att hela värden startas om efter docker network create; detta var ett ZimaOS-specifikt beteende som observerades i tråden från 2025.

En kompatibilitetsfråga för Compose-etiketter kvarstod fortfarande

Även efter att omstarten hade klargjort synkroniseringsproblemet dokumenterade tråden en annan begränsning. ZimaOS kunde rapportera att ett manuellt skapat nätverk hade en felaktig com.docker.compose.network etikett.

ZimaOS-fel för anpassat nätverk som rör etiketten com docker compose network
Källtråden skilde mellan fungerande Docker-DNS och ett kvarstående kompatibilitetsproblem mellan ZimaOS WebUI och Compose-metadata.

Zima-Giorgio sade slutligen att oförmågan att välja vissa skapade nätverk verkade vara ett problem och skulle vidarebefordras till teamet. Tråden innehåller ingen senare bekräftelse på att alla specialfall vid nätverksval hade åtgärdats.

Verifiera nätverket från Docker, inte bara i användargränssnittet

docker network inspect media-net
docker inspect CONTAINER_A
docker inspect CONTAINER_B

Testa sedan namnupplösningen från en container:

docker exec CONTAINER_A ping -c 2 CONTAINER_B

Om avbildningen inte innehåller ping, använd ett annat tillgängligt diagnostikverktyg eller en tillfällig testcontainer på samma nätverk.

Använd namn eller alias i stället för att ändra IP-adresser

När Docker-DNS fungerar på en användardefinierad bridge konfigurerar du applikationerna med en stabil slutpunkt, till exempel:

http://transmission:9091

eller ett nätverksalias som definierats i Compose.

Var Cloudflared orsaken?

Källtråden identifierade inte Cloudflared som grundorsaken. IP-kommunikationen fungerade redan, och felet överensstämde med Dockers DNS- och namnupplösningsbeteende.

Tillfällig lösning: värd-IP och publicerade portar

Den ursprungliga skribenten reserverade tillfälligt en statisk LAN-IP-adress för ZimaOS-värden och konfigurerade apparna att använda den IP-adressen tillsammans med publicerade portar. Detta kan fungera, men trafiken går via värdens väg för publicerade portar i stället för via stabil routing med tjänstenamn internt i Docker.

Checklista för upplösning av containernamn i ZimaOS

  1. Bekräfta att IP-till-IP-kommunikation fungerar.
  2. Kontrollera om containrarna ligger på standard-bridge eller på en namngiven användardefinierad bridge.
  3. Skapa en anpassad bridge när stabil DNS krävs.
  4. Anslut alla nödvändiga tjänster till samma anpassade nätverk.
  5. På ZimaOS-versioner som motsvarar källtråden bör du starta om så att WebUI uppdaterar sitt Docker-nätverkstillstånd.
  6. Verifiera med docker inspect och docker network inspect.
  7. Testa upplösning av containernamn inifrån en annan container.
  8. Om ZimaOS rapporterar en avvikelse i Compose-etiketter ska du betrakta det som ett UI-/integrationsproblem, inte som ett bevis på att Dockers nätverk är ogiltigt.

Vanliga frågor om ZimaOS Docker Bridge

Varför kan containrar på bridge inte hitta varandra via namn?

Dockers standard-bridge tillåter IP-kommunikation men tillhandahåller inte automatisk DNS-upplösning av containernamn på samma sätt som en användardefinierad bridge.

Behöver jag starta om efter docker network create?

Standard-Docker gör normalt inte det. I den här ZimaOS-tråden från 2025 behövdes en omstart för att ZimaOS WebUI skulle hämta det nya nätverkstillståndet.

Förstör Cloudflared Docker-bridge-DNS?

Källtråden fastställde inte det.

Bör jag tilldela statiska Docker-IP-adresser?

Vanligtvis inte. Användardefinierade Docker-DNS-namn och alias är mer portabla än hårdkodade container-IP-adresser.