Skip to content
BotServBotServ
DockerNetzwerkBridgeOverlayHostContainer

Docker Netzwerk

Netzwerke in Docker verstehen. Bridge, Host, Overlay und benutzerdefinierte Netzwerke für KI-Dienste.

S

schutzgeist

3 min read
Docker Netzwerk

Docker Netzwerk

Was dieser Artikel über Docker-Netzwerke behandelt

  • Welche Netzwerktypen Docker bietet.
  • Wie Container sich gegenseitig erreichen.
  • Benutzerdefinierte Netzwerke einrichten.
  • Unterschied zwischen Bridge, Host und Overlay.
  • Tipps für lokale KI-Stacks.

Einleitung: Docker Netzwerk

Docker isoliert Container standardmässig voneinander. Für Multi-Container-Anwendungen wie Ollama, Open WebUI und Datenbanken braucht man aber ein gemeinsames Netzwerk. Docker bietet verschiedene Netzwerk-Treiber, mit denen Container kommunizieren, Ports veröffentlicht werden und externer Zugriff ermöglicht wird. Wer Docker-Netzwerke versteht, vermeidet typische Verbindungsprobleme und baut stabilere Setups.

Dieser Artikel erklärt die wichtigsten Docker-Netzwerktypen und deren Einsatz in lokalen KI-Projekten.

Wichtige Begriffe

  • Bridge: Standard-Netzwerk in Docker.
  • Host: Container teilt den Netzwerkstack des Hosts.
  • Overlay: Netzwerk für Docker Swarm und Cluster.
  • None: Keine Netzwerkverbindung.
  • DNS: Namensauflösung im Container-Netzwerk.
  • Alias: Zusätzlicher Name für einen Container im Netzwerk.
  • Port-Mapping: Weiterleitung von Host-Port auf Container-Port.

Standard-Netzwerktypen

Bridge

Jeder Container, der kein Netzwerk angegeben bekommt, landet im Default-Bridge. Dort kann er andere Container über IP erreichen, aber nicht per Name. Benutzerdefinierte Bridge-Netzwerke bieten DNS-Namensauflösung.

Host

Der Container nutzt den Netzwerkstack des Hosts. Keine Isolation, aber maximale Performance. Unter Windows und macOS nicht verfügbar.

None

Keine Netzwerkverbindung. Nur für spezielle Anwendungen.

Overlay

Für Docker Swarm und Cluster. Ermöglicht Kommunikation zwischen Containern auf verschiedenen Hosts.

Benutzerdefinierte Bridge-Netzwerke

docker network create ki-net

Container an Netzwerk anhängen:

docker run -d --name ollama --network ki-net ollama/ollama
docker run -d --name open-webui --network ki-net -e OLLAMA_BASE_URL=http://ollama:11434 ghcr.io/open-webui/open-webui:main

Der Container open-webui kann nun über den Namen ollama auf Ollama zugreifen.

In Docker Compose

services:
  ollama:
    image: ollama/ollama
    networks:
      - ki-net

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    networks:
      - ki-net
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434

networks:
  ki-net:

Ports veröffentlichen

docker run -d -p 127.0.0.1:8080:8080 open-webui

Nur der Host-Port 8080 ist erreichbar. Der Container bleibt hinter der Bind-Adresse verborgen.

DNS im Netzwerk

Benutzerdefinierte Bridges bieten eingebautes DNS. Container können sich per Namen ansprechen. Das ist besonders praktisch in Compose-Stacks.

Hostnetzwerk

docker run -d --network host ollama/ollama

Keine Port-Mapping notwendig, der Container lauscht direkt auf Host-Schnittstellen. Weniger sicher, aber manchmal nötig.

Netzwerk isolieren

Container, die nicht miteinander kommunizieren sollen, können in separate Netzwerke gelegt werden:

networks:
  front:
  back:

Nur gewünschte Dienste bekommen Zugriff auf beide Netze.

Verbindungsprobleme diagnostizieren

docker network ls
docker network inspect ki-net
docker exec -it open-webui ping ollama

Wenn ping fehlschlägt, prüfen, ob beide Container im gleichen Netzwerk sind.

Typische Stolpersteine

  • Default-Bridge ohne DNS: Container-Name kann nicht aufgelöst werden.
  • Falscher Port: Host-Port und Container-Port verwechseln.
  • Falsche Bind-IP: 0.0.0.0 anstelle von 127.0.0.1.
  • Container im falschen Netzwerk: Nur IP erreichbar, nicht Name.
  • Firewall blockiert: Host-Firewall verhindert externen Zugriff.
  • Hostnetzwerk auf macOS/Windows: Nicht verfügbar.

FAQ: Docker Netzwerk

Wie erreiche ich einen Container über seinen Namen? Im gleichen benutzerdefinierten Bridge-Netzwerk per DNS-Name.

Was ist der Unterschied zwischen Bridge und Host? Bridge isoliert, Host teilt den Netzwerkstack.

Brauche ich Overlay? Nur für Docker Swarm oder Cluster über mehrere Hosts.

Wie veröffentliche ich Ports sicher? Am besten nur an 127.0.0.1 binden.

Warum kann Container A Container B nicht erreichen? Möglicherweise sind sie in unterschiedlichen Netzwerken.

Quellen und weiterführende Literatur

Zusammenfassung: Docker Netzwerk

Docker-Netzwerke sind essenziell für Multi-Container-Setups. Benutzerdefinierte Bridge-Netzwerke bieten DNS-Namensauflösung und isolieren Dienste sinnvoll. Port-Mappings sollten nur an 127.0.0.1 erfolgen, Host-Netzwerk ist Spezialfall. Wer docker network create, docker network inspect und einfache Verbindungstests nutzt, findet Netzwerkprobleme schnell. Für KI-Stacks mit Ollama, Open WebUI und Datenbanken sind saubere Netzwerke die Grundlage für einen stabilen Betrieb.

Zurück zum KI Blog
Share:

Ähnliche Beiträge