Docker-Logs mit Dozzle übersichtlich anzeigen¶
Veröffentlicht am 27. Juli 2026 · Geschätzte Lesezeit: 3 Minuten
Mit Dozzle liest du die Protokolle deiner Docker-Container bequem im Browser. Das Programm greift auf die Docker-Schnittstelle zu und zeigt neue Logzeilen in Echtzeit an. Die Einrichtung dauert etwa 10 Minuten. Diese Anleitung richtet zusätzlich eine Anmeldung ein und lässt Container-Aktionen sowie Shell-Zugriff abgeschaltet. Grundlage ist die offizielle Dozzle-Dokumentation (Stand: 27. Juli 2026).
Voraussetzungen
- Ein Linux-Server mit Docker und Docker Compose
- Ein Benutzerkonto mit Berechtigung für Docker
- Port 8080 im Heimnetz frei
- Die feste IP-Adresse des Docker-Servers
1. Arbeitsordner anlegen¶
Führe die folgenden Befehle auf deinem Docker-Server aus. Sie erstellen den Projektordner und den Unterordner für Benutzerdatei und Einstellungen:
2. Benutzerdatei sicher erzeugen¶
Ersetze <dozzle-benutzer> durch deinen gewünschten Anmeldenamen und
<anzeigename> durch einen frei wählbaren Namen. Der Befehl fragt das Passwort
verdeckt im Terminal ab. Dadurch landet es nicht im Befehl und nicht im
Shell-Verlauf. Die erzeugte Datei enthält nur einen Passwort-Hash.
docker run -it --rm amir20/dozzle:latest generate <dozzle-benutzer> --name "<anzeigename>" --user-roles none > data/users.yml
Prüfe anschließend, ob die Datei angelegt wurde:
Benutzerdatei schützen
Die Datei enthält zwar kein Klartextpasswort, aber weiterhin schützenswerte Anmeldedaten. Gib sie nicht weiter und veröffentliche sie nicht in Git.
3. Compose-Datei anlegen¶
Lege im Ordner ~/dozzle eine Datei namens compose.yaml mit folgendem Inhalt an.
Der Docker-Socket wird schreibgeschützt eingebunden. Anmeldung, Healthcheck und
automatischer Neustart sind bereits eingerichtet:
services:
dozzle:
image: amir20/dozzle:latest
container_name: dozzle
restart: unless-stopped
ports:
- "8080:8080"
environment:
DOZZLE_AUTH_PROVIDER: simple
DOZZLE_ENABLE_ACTIONS: "false"
DOZZLE_ENABLE_SHELL: "false"
volumes:
- /var/run/docker.sock:/var/run/docker.sock:ro
- ./data:/data
healthcheck:
test: ["CMD", "/dozzle", "healthcheck"]
interval: 3s
timeout: 30s
retries: 5
start_period: 30s
Docker-Socket ist besonders sensibel
Auch ein schreibgeschützt eingebundener Docker-Socket gibt umfangreiche Informationen über Host und Container preis. Stelle Port 8080 niemals per Router-Portfreigabe ins Internet. Für externen Zugriff brauchst du zusätzlich HTTPS, einen abgesicherten Reverse Proxy oder ein VPN. Die Sicherheitshinweise von Dozzle erklären die Risiken genauer.
4. Konfiguration prüfen und starten¶
Prüfe im Ordner ~/dozzle zuerst die Compose-Datei:
Wenn keine Fehlermeldung erscheint, startest du Dozzle:
Kontrolliere anschließend Containerstatus und Healthcheck:
5. Anmeldung und Logansicht testen¶
Öffne im Browser http://<server-ip>:8080. Ersetze <server-ip> durch die feste
IP-Adresse deines Docker-Servers und melde dich mit dem zuvor angelegten Benutzer an.
Links sollten deine laufenden Container erscheinen. Öffne einen Container und prüfe,
ob neue Logzeilen angezeigt werden.
Falls die Seite nicht erreichbar ist, siehst du mit diesem Befehl die Dozzle-eigenen Meldungen:
Typische Ursachen
connection refused deutet meist auf einen gestoppten Container oder eine
Firewall-Regel hin. Fehlen Container in der Liste, prüfe die Einbindung von
/var/run/docker.sock. Bei einer Anmeldeschleife kontrollierst du, ob
data/users.yml vorhanden und gültig eingerückt ist.
6. Backup und Rückweg¶
Stoppe Dozzle kurz, damit die Einstellungen konsistent gesichert werden:
Erstelle im übergeordneten Ordner ein Archiv aus Compose-Datei und Datenordner:
Starte Dozzle danach wieder:
Wenn du Dozzle nicht weiterverwenden möchtest, genügt docker compose down. Die
Dateien bleiben dabei erhalten und können später wieder genutzt oder erst nach einer
Kontrolle manuell gelöscht werden.
Fertig¶
Dozzle läuft nun mit Anmeldung unter http://<server-ip>:8080. Öffne testweise einen
Container und starte ihn regulär neu. Wenn anschließend neue Logzeilen erscheinen,
funktioniert die Anzeige wie vorgesehen.