Docker-Bereinigungsumgebungsvorgang

Docker-Bereinigungsumgebungsvorgang

Beginnen Sie vorsichtig mit der Reinigung!

Auflisten nicht verwendeter Datenträger

Docker-Volume ls -qf baumelnd = wahr

Bereinigen Sie ungenutzte Volumes

Docker-Volume rm $(Docker-Volume ls -qf dangling=true)

Bereinigen Sie unbrauchbare Bilder

Docker RMI $ (Docker-Bilder | grep '^<keine>' | awk '{print $3}')

Weiter reinigen

Docker-System bereinigen

Docker-Volume bereinigen

Für die Verwendung reichen die oben genannten Befehle aus, ich kenne keine anderen!

Zusatzwissen: Docker-Artikel zeigt Ihnen, wie Sie Docker-Speicherplatz bereinigen, um Speicherplatz freizugeben

So bereinigen Sie das Docker-Verzeichnis

Das Docker-Verzeichnis hat die Systemfestplatte vollgestopft und lässt sich nur schwer migrieren. Ich möchte fragen, ob es eine schnelle Lösung gibt. Die Antwort lautet ja. Nachfolgend habe ich klassische Fälle zusammengestellt, die für Produktion und Tests geeignet sind. Schreiben Sie ein Skript zum Bereinigen des Docker-Protokolls wie folgt:

[root@www ~]# cat clean_docker_log_space.log 
#!/bin/bash
docker_log_files=$(finde /var/lib/docker/containers/ -name '*-json.log')
docker_logs_size=$(find /var/lib/docker/containers/ -name '*-json.log' | xargs du -sc | tail -1 |awk '{print $1,"K"}')
free -h && sync && echo 1 > /proc/sys/vm/drop_caches #Systemcache freigeben echo -e "\033[32mDie Gesamtgröße des Docker-Protokolls beträgt $docker_logs_size\033[0m"
 
zum Anmelden in $docker_log_files
  Tun
   echo "Jetzt wird das Docker-Protokoll bereinigt, Docker-Core-Protokolle: $log"
    cat /dev/null > $log
    systemctl reload docker #Laden Sie den Docker-Dienst neu, ohne den vorhandenen Docker zu beeinträchtigen
  Erledigt 
 
frei -h

Die Ergebnisse sind wie folgt:

[root@www ~]# ./clean_docker_log_space.log 
       insgesamt genutzter freier gemeinsamer Buff/Cache verfügbar
Speicher: 976 Mio. 598 Mio. 112 Mio. 6,8 Mio. 264 Mio. 157 Mio.
Tausch: 511 Mio. 66 Mio. 445 Mio.
Die Gesamtgröße des Docker-Protokolls beträgt 80 K
Jetzt wird das Docker-Protokoll bereinigt, Docker-Kernprotokolle: /var/lib/docker/containers/7538f077348e3c9722fb90ed4b0a5c3d60d72112e989526767c63d55f5a76f3e/7538f077348e3c9722fb90ed4b0a5c3d60d72112e989526767c63d55f5a76f3e-json.log
Jetzt wird das Docker-Protokoll und die Docker-Kernprotokolle bereinigt: /var/lib/docker/containers/235d20190027e757a203f1b4d4093335fb92ba515f7a501448c36c1332c622a2/235d20190027e757a203f1b4d4093335fb92ba515f7a501448c36c1332c622a2-json.log
Jetzt wird das Docker-Protokoll und die Docker-Kernprotokolle bereinigt: /var/lib/docker/containers/685a7af447ce884de1e9bbeb5d4ca0ca99860096f71c33b4f9a4d15a427c5e00/685a7af447ce884de1e9bbeb5d4ca0ca99860096f71c33b4f9a4d15a427c5e00-json.log
       insgesamt genutzter freier gemeinsamer Buff/Cache verfügbar
Speicher: 976 M 599 M 176 M 6,8 M 200 M 168 M
Tausch: 511 Mio. 66 Mio. 445 Mio.
 
[root@www ~]# find /var/lib/docker/containers/ -name '*-json.log' | xargs du -sc | tail -1 |awk '{print $1,"K"}'
0K

Es wird empfohlen, das Skript zur geplanten Linux-Aufgabe hinzuzufügen und es einmal pro Woche zu bereinigen. Dadurch kann sichergestellt werden, dass Docker keine zusätzlichen Protokolldateien generiert.

Die Produktionsumgebung ist wie folgt

df -TH Docker nutzt 93% der Systemfestplatte

Führen Sie das Skript clean_docker_log_space.log aus. Nach der Ausführung des Bereinigungsskripts zeigt df -TH, dass Docker 43 % der Systemfestplatte verwendet.

Vorschläge zur Docker-Bereitstellung

Schließlich wird empfohlen, Docker-Anwendungen im benutzerdefinierten Docker-Konfigurationsverzeichnis bereitzustellen

#Mounten Sie zunächst die Festplatte mit der erforderlichen Kapazität und wählen Sie /data als Mount-Verzeichnis
[root@www ~]# mkdir -p /data
#Stoppt Docker
[root@www ~]# systemctl stop docker
 
#Daten in ein neues Verzeichnis verschieben [root@www ~]# mv /var/lib/docker /data
#Konfiguration ändern, --graph /data hinzufügen
[root@www ~]# vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --graph /data 
 
[root@www ~]# systemctl daemon-reload
[root@www ~]# systemctl starte Docker 
[root@www ~]# systemctl aktiviere docker.service 
Symlink von /etc/systemd/system/multi-user.target.wants/docker.service nach /usr/lib/systemd/system/docker.service erstellt.
 

Der obige Reinigungsvorgang für die Docker-Umgebung ist der gesamte Inhalt, den der Editor mit Ihnen teilt. Ich hoffe, er kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen.

Das könnte Sie auch interessieren:
  • Lösung zur Bereinigung des Docker-Festplattenspeichers
  • Gängige Methoden und Probleme der Docker-Bereinigung
  • So bereinigen Sie den von Docker belegten Speicherplatz
  • So bereinigen Sie regelmäßig private Docker-Server-Images
  • So bereinigen Sie von Docker generierte Junk-Dateien
  • So bereinigen Sie Docker-Ressourcen schnell
  • Sammlung von Docker-Bereinigungsbefehlen
  • So bereinigen Sie Ihre Docker-Daten vollständig

<<:  Lösen Sie das Problem des Zeilenumbruchs in der Scroll-Ansicht des WeChat-Applets

>>:  Tutorial zur SQL-Optimierung: IN- und RANGE-Abfragen

Artikel empfehlen

Detaillierte Schritte zur Installation von Anaconda unter Linux (Ubuntu 18.04)

Anaconda ist die beliebteste Python-Plattform für...

So deaktivieren Sie die Eslint-Erkennung in Vue (mehrere Methoden)

Inhaltsverzeichnis 1. Problembeschreibung 2. Prob...

Details zum JavaScript-Prototyp und zur Prototypkette

Inhaltsverzeichnis 1. Prototyp (expliziter Protot...

So zeichnen Sie eine Schaltfläche in XAML als Kreis neu

Beim Verwenden des XAML-Layouts müssen manchmal ei...

Prinzip der Ereignisdelegierung in JavaScript

Inhaltsverzeichnis 1. Was ist Eventdelegation? 2....

So fügen Sie einer großen Datentabelle in MySQL Felder hinzu

Vorwort Ich glaube, jeder ist mit dem Hinzufügen ...

Die vollständige Liste der MIME-Typen

Was ist ein MIME-TYP? 1. Zunächst müssen wir vers...

Detaillierte Erklärung der Primärschlüssel und Transaktionen in MySQL

Inhaltsverzeichnis 1. Kommentare zu MySQL-Primärs...

Ungültige Lösung beim Definieren mehrerer Klassenattribute in HTML

Beim Schreiben von HTML definieren wir häufig mehr...

So lassen Sie eine Remoteverbindung in MySql zu

So lassen Sie eine Remoteverbindung in MySql zu U...