Zurück zur Docker-Übersicht
Artikel 04 von 08

Dienste erreichbar machen

Ports, lokale Adressen und .env-Dateien verstehen, damit dein Compose-Dienst wirklich im Browser auftaucht.

Hier verstehst du Docker Ports, localhost und .env-Dateien, damit Webdienste zuverlässig erreichbar sind. Ein Container kann perfekt laufen und trotzdem von außen unsichtbar sein. Der Grund ist fast immer derselbe: der Port wurde nicht freigegeben oder du greifst auf die falsche Adresse zu.

Für lokale KI-Dienste ist das wichtig. Whisper, n8n oder Open WebUI laufen oft als Webdienst. Du willst sie im Browser oder per API erreichen, ohne jedes Mal zu raten, welcher Port gemeint ist.

Ports bewusst setzen

Die linke Zahl ist der Port auf deinem Rechner. Die rechte Zahl ist der Port im Container. Dieses Beispiel macht den Dienst unter http://localhost:8080 erreichbar:

services: web: image: nginx:alpine ports: - "8080:80"

Wenn du später mehrere Dienste betreibst, bekommt jeder Dienst einen eigenen Host-Port: zum Beispiel 5678 für n8n, 3000 für Open WebUI oder 9001 für eine lokale Whisper-API.

Konfiguration in .env auslagern

Werte, die sich ändern können, lege ich gern in eine .env-Datei. Dann bleibt die Compose-Datei lesbar.

# .env WEB_PORT=8080 # compose.yml services: web: image: nginx:alpine ports: - "${WEB_PORT}:80"

Was mir wichtig ist

Praxis

Ich vergebe Ports bewusst und dokumentiere sie in der Compose-Datei oder in der .env. Das klingt klein, verhindert aber später viel Sucherei, wenn mehrere lokale Dienste parallel laufen.

Der nächste sinnvolle Schritt

Wenn du diesen Teil verstanden hast, sind diese Seiten die logisch nächsten Stationen:

Häufige Fragen

Warum ist mein Container im Browser nicht erreichbar?

Meist ist kein Port veröffentlicht oder du nutzt den falschen Host-Port. Prüfe ports in der compose.yml und docker compose ps.

Was bedeutet 8080:80 in Docker Compose?

Links steht der Port auf deinem Rechner, rechts der Port im Container. Du öffnest also localhost:8080.

Wofür ist eine .env-Datei gut?

Sie hält veränderbare Werte wie Ports, Pfade und Passwörter getrennt von der eigentlichen Compose-Struktur.