Gängige Methoden und Probleme der Docker-Bereinigung

Gängige Methoden und Probleme der Docker-Bereinigung

Wenn Sie Docker für die Entwicklung im großen Maßstab verwenden, aber keine Bereinigungsstrategie haben, ist Ihre Festplatte schnell voll und wenn Sie wirklich sofort etwas ausliefern müssen, weil das Produkt heiß ist, können Sie es nicht ausliefern.

Wenn wir einen Prozess auf einem Computer ausführen, wird nach Abschluss des Prozesses alles zerstört. Container sind die Infrastruktur, mit der viele von uns heute arbeiten. Alles läuft in einem Container, mit dem Ziel, einen Prozess pro Container zu haben. Wenn der Vorgang abgeschlossen ist, wird der Container beendet. Aber es wird nicht von alleine sauber.

Was Docker angesammelt hat

Darauf müssen Sie achten

  • Angehaltener Container

  • Datenträgervolumen

  • Spiegel

  • Netzwerk

Wenn Sie über genügend Speicherplatz verfügen, ist Ihnen der Speicherplatz vielleicht nicht so wichtig, aber das Netzwerk ist auch wichtig. Standardmäßig verwendet Docker das Bridge-Netzwerk, das auf 31 Netzwerke begrenzt ist. Wenn das Limit erreicht ist, wird die folgende Meldung angezeigt:

Es konnte kein verfügbarer, nicht überlappender IPv4-Adresspool unter den Standardeinstellungen gefunden werden, der dem Netzwerk zugewiesen werden konnte.

Dies kann passieren, wenn Sie ein intensiver Docker-Compose-Benutzer sind, der ein Netzwerk pro Projekt erstellt. Sie können das Problem beheben, indem Sie ein benutzerdefiniertes --subnet Subnetz festlegen, zum Beispiel:

Docker-Netzwerk erstellen Dada --Subnetz 192.167.11.0/24

Aber in diesem Artikel geht es jedenfalls ums Putzen.

Aufräumen mit Docker

Bereinigen gestoppter Container

docker rm -v $(docker ps --all --quiet --filter 'status=exited')

Dadurch werden alle Container im beendeten Zustand gefunden und ihre IDs zeilenweise ausgedruckt, sodass wir sie an andere Shell-Befehle weitergeben können.

Wir verwenden docker rm -v um alle anonymen Volumes (Volumes ohne expliziten Namen) zu entfernen.

Bereinigen von Datenträgervolumes

Der obige Befehl sollte das mit diesem Container verknüpfte Volume entfernen. Wenn Sie Volumes manuell erstellt haben und alle nicht verwendeten Volumes löschen möchten:

Docker-Volume rm $(Docker-Volume ls --quiet --filter 'dangling=true')

Bereinigen Sie das Bild

Normalerweise können Sie alle Docker-Images problemlos entfernen. Wir können es bei Bedarf auf Abruf erhalten. Normalerweise verlängern sich die Build-Zeiten nach der Bereinigung eines Images, da der Docker-Daemon Zeit benötigt, um das Image erneut herunterzuladen.

docker rm --force $(docker images --quiet)

Hier verwenden wir --force , um das Entfernen des Images zu erzwingen, auch wenn ein Container dieses Image verwendet. Wir können dieses Bild später bekommen.

Aufräumen des Netzwerks

Es ist ganz einfach. Wir können jedes Netzwerk löschen und es wird später bei Bedarf neu erstellt.

Docker-Netzwerk rm $(Docker-Netzwerk ls --quiet)

Aufräumen mit Docker-Compose

Wenn Sie Docker-Compose zum Starten Ihrer Container verwenden, haben wir eine einfache Möglichkeit, die mit einer bestimmten Compose-Datei verknüpften Ressourcen zu bereinigen.

docker-compose down --volumes --rmi alle --remove-orphans

Leider entfernt dieser Befehl keine anonymen Datenträger, Sie müssen sich also damit befassen.

Ein Befehl löst alle Probleme

Docker ist flüchtig, wir können unser Image jederzeit erneut abrufen, unsere Datenbank für die Entwicklung neu erstellen oder, wenn es sich nur um ein System zur kontinuierlichen Integration handelt, alles löschen.

Docker-System beschneiden --alles --force --volumes

Damit ist dieser Artikel über gängige Methoden und Probleme der Docker-Bereinigung abgeschlossen. Weitere Inhalte zur Docker-Bereinigung finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Lösung zur Bereinigung des Docker-Festplattenspeichers
  • Docker-Bereinigungsumgebungsvorgang
  • 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

<<:  Analysieren Sie den Unterschied zwischen den Methoden querySelector und getElementById in JavaScript

>>:  Acht Regeln für effektive Webformulare

Artikel empfehlen

Detaillierte Erklärung der HTML-Programmier-Tags und der Dokumentstruktur

Der Zweck der Verwendung von HTML zum Markieren v...

Detaillierte Analyse mehrerer Situationen, in denen MySQL-Indizes fehlschlagen

1. Führende Fuzzy-Abfragen können keinen Index ve...

So fahren Sie MySQL sicher herunter

Beim Herunterfahren des MySQL-Servers können, abh...

Analyse der Unterschiede zwischen Mysql InnoDB und MyISAM

MySQL unterstützt viele Arten von Tabellen (d. h....

Detaillierte Erklärung der Kodierungsprobleme bei MySQL-Befehlszeilenoperationen

1. Überprüfen Sie die MySQL-Datenbankkodierung my...

Vue.js implementiert ein einfaches Faltpanel

In diesem Artikelbeispiel wird der spezifische Co...

Detailliertes Tutorial zur Installation von Protobuf 3 unter Ubuntu

Wann ist die Installation durchzuführen? Wenn Sie...

Beispiel für eine adaptive CSS-Bildschirmgrößenimplementierung

Um eine CSS-Bildschirmgrößenanpassung zu erreiche...

Zusammenfassung der Linux-Benutzergruppen und -Berechtigungen

Benutzergruppen Unter Linux muss jeder Benutzer e...

So erstellen und implementieren Sie ein Node-Projekt mit Docker

Inhaltsverzeichnis Was ist Docker Clientseitiger ...