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

Zusammenfassung der 10 gängigen HBase-Betriebs- und Wartungstools

Zusammenfassung: HBase verfügt über zahlreiche Be...

Upgrade des Windows Server 2008R2-Dateiservers auf Windows Server 2016

Die Benutzerorganisation verfügt über zwei Window...

MySql-Anmeldekennwort vergessen und Lösung für vergessenes Kennwort

Methode 1: MySQL bietet einen Befehlszeilenparame...

Lösen Sie das Problem der Installation von Theano auf Ubuntu 19

Lösung: Ändern Sie die Datei setup.py direkt in d...

Lösung für den Fehler 1045, wenn Navicat eine Verbindung zu MySQL herstellt

Beim Herstellen einer Verbindung mit der lokalen ...

So richten Sie Textfelder in mehreren Formularen in HTML aus

Der Formularcode ist wie in der Abbildung dargest...

Einführung in Spark und Vergleich mit Hadoop

Inhaltsverzeichnis 1. Spark vs. Hadoop 1.1 Nachte...

Detaillierte Schritte zum Herunterladen und Installieren von Tomcat unter Linux

Wenn Sie gerade erst mit Linux in Berührung gekom...

Vue implementiert Chat-Schnittstelle

In diesem Artikelbeispiel wird der spezifische Co...

Navigationsdesign und Informationsarchitektur

<br />Wenn wir über Navigation sprechen, geh...

Vue+thinkphp5.1+axios zum Realisieren des Datei-Uploads

In diesem Artikel erfahren Sie, wie Sie mit think...