Heim  >  Artikel  >  Betrieb und Instandhaltung  >  So löschen Sie Docker-Protokolle

So löschen Sie Docker-Protokolle

王林
王林Original
2020-05-21 10:39:305025Durchsuche

So löschen Sie Docker-Protokolle

1. Suchen Sie das Docker-Containerprotokoll

Unter Linux werden Containerprotokolle im Allgemeinen unter /var/lib/docker/containers/container_id/ gespeichert Die Datei, die mit json.log (Geschäftsprotokoll) endet, ist sehr groß. Überprüfen Sie die Größe jeder Protokolldatei. Der Inhalt lautet wie folgt:

#!/bin/sh
echo "======== docker containers logs file size ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
	ls -lh $log
done

Führen Sie den folgenden Befehl aus:

# chmod +x docker_log_size.sh
# ./docker_log_size.sh

2, Docker-Container-Protokolle bereinigen

Wenn der Docker-Container ausgeführt wird, werden Sie nach dem Löschen des Protokolls mit rm -rf feststellen, dass der Speicherplatz nicht über df freigegeben wurde -h-Befehl.

Der Grund dafür ist, dass in Linux- oder Unix-Systemen durch das Löschen von Dateien über rm -rf oder den Dateimanager die Verknüpfung mit der Verzeichnisstruktur des Dateisystems aufgehoben wird. Wenn die Datei geöffnet ist (von einem Prozess verwendet wird), kann der Prozess die Datei weiterhin lesen und der Speicherplatz bleibt belegt.

Die richtige Methode ist cat /dev/null > Natürlich können Sie es auch über rm -rf löschen und Docker neu starten. Stellen Sie als Nächstes ein Protokollbereinigungsskript „clean_docker_log.sh“ mit folgendem Inhalt bereit:

#!/bin/sh
echo "======== start clean docker containers logs ========"
logs=$(find /var/lib/docker/containers/ -name *-json.log)
for log in $logs
do
	echo "clean logs : $log"
	cat /dev/null > $log
done
echo "======== end clean docker containers logs ========

Führen Sie dann den folgenden Befehl aus:


# chmod +x clean_docker_log.sh
# ./clean_docker_log.sh

Empfohlenes Tutorial:

Docker-Tutorial

Das obige ist der detaillierte Inhalt vonSo löschen Sie Docker-Protokolle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn