Einführung in die Docker-Protokollierung
Docker ist eine beliebte Plattform zur Containerisierung, die es Entwicklern ermöglicht, Anwendungen konsistent und reproduzierbar zu verpacken und bereitzustellen. Bei der Ausführung von Anwendungen in Docker-Containern ist die Protokollierung ein kritischer Aspekt für die Überwachung und Fehlerbehebung. Docker bietet verschiedene Optionen zur Konfiguration und Verwaltung der Protokollierung Ihrer containerisierten Anwendungen.
Verständnis der Docker-Protokollierung
Docker verwendet den Logging-Treiber, um die von Containern generierten Protokolle zu verarbeiten. Der Logging-Treiber bestimmt, wie die Protokolle gespeichert und abgerufen werden. Docker unterstützt verschiedene Logging-Treiber, darunter:
json-file
: Der Standard-Logging-Treiber, der Protokolle im JSON-Format auf dem Dateisystem des Hosts speichert.
syslog
: Sendet Protokolle an einen Syslog-Server.
journald
: Sendet Protokolle an das systemd-Journal.
gelf
: Sendet Protokolle an einen Graylog Extended Log Format (GELF)-Endpunkt.
fluentd
: Sendet Protokolle an einen Fluentd-Server.
awslogs
: Sendet Protokolle an Amazon CloudWatch Logs.
splunk
: Sendet Protokolle an eine Splunk Enterprise- oder Splunk Cloud-Instanz.
Die Wahl des Logging-Treibers hängt von den Anforderungen Ihrer Anwendung, der Infrastruktur, auf der Sie laufen, und den Tools für die Protokollverwaltung und -analyse ab.
Zugriff auf Container-Protokolle
Sie können auf die Protokolle eines laufenden Containers über den Befehl docker logs
zugreifen. Dieser Befehl ermöglicht Ihnen, die Protokolle eines bestimmten Containers anzuzeigen, die Protokolle in Echtzeit zu verfolgen und die Protokolle sogar basierend auf verschiedenen Kriterien zu filtern.
## Anzeige der Protokolle eines Containers
docker logs my-container
## Echtzeit-Verfolgung der Protokolle
docker logs -f my-container
## Anzeige der letzten 10 Zeilen der Protokolle
docker logs --tail 10 my-container
Standardmäßig ruft der Befehl docker logs
die Protokolle vom für den Container angegebenen Logging-Treiber ab. Wenn Sie den Treiber json-file
verwenden, werden die Protokolle auf dem Dateisystem des Hosts gespeichert, und Sie können darauf auch direkt vom Host zugreifen.