Docker-Protokolle werden in Dateien mit der Endung „json.log“ in „/var/lib/docker/containers/ID/ID-json.log“ gespeichert. Sie können den integrierten Befehl „docker logs -f e4bd48ef3103“ verwenden. um das Protokoll anzuzeigen.
Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-1.13.1-Version, Dell G3-Computer.
Docker speichert Containerprotokolle an seinem Hauptspeicherort /var/lib/docker/. Jeder Container verfügt über ein Protokoll, das für seine ID spezifisch ist (vollständige ID, nicht die übliche Anzeige der verkürzten ID). Sie können wie folgt darauf zugreifen:
/var/lib/docker/containers/ID/ID-json.log
Dort werden sie gespeichert, aber da sie im JSON-Format vorliegen, sind sie nicht einfach zu lesen und die Verwendung der vollständigen Container-ID ist ärgerlich. Docker bietet einen integrierten Befehl, um sie anzuzeigen:
docker logs -f e4bd48ef3103
Hier hält das Flag -f die Eingabeaufforderung geöffnet und „wacht“ auf alle neuen Einträge in der Datei. Sie können auch --tail die Datei oder --timestamps verwenden, um Protokollzeiten anzuzeigen, oder --until und --since, um nach Zeit zu filtern.
Wenn Sie Docker Compose verwenden, können Sie alle Protokolle ganz einfach mit dem darin enthaltenen Protokollbefehl anzeigen:
docker-compose logs
Eines wird Ihnen jedoch auffallen: STDOUT und STDERR, die für viele Dinge nützlich sind, zeigen nur die Ausgabe der Docker-Konsole an für den durch „CMD“ in der Datei angegebenen Einstiegspunkt. Viele Anwendungen verfügen über eigene dedizierte Protokollierungssysteme, die normalerweise in /var/log/nginx/access.log protokollieren. Auf solche Protokolle kann weiterhin von der Hostseite über Docker zugegriffen werden.
Empfohlenes Lernen: „Docker-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonWo werden Docker-Protokolle gespeichert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!