So bereinigen Sie Ihre Docker-Daten vollständig

So bereinigen Sie Ihre Docker-Daten vollständig

Docker nimmt keine Konfigurationsänderungen an Ihrem System vor, beansprucht aber viel Speicherplatz. Nach einer Weile (mit Docker) sollten Sie einige beunruhigende Nutzungsstatistiken zurückbekommen, wenn Sie den folgenden Befehl eingeben:

Docker-System df

Glücklicherweise können Sie mit Docker Speicherplatz von ungenutzten Images, Containern und Volumes zurückgewinnen.

Regelmäßig beschneiden

Um angehaltene Container, ungenutzte Netzwerke und hängende Bilder sicher zu entfernen, empfiehlt es sich, ab und zu den folgenden Befehl auszuführen:

Docker-System bereinigen

Die riskanteren Optionen sind:

Docker-System bereinigen -a

Dadurch werden auch alle Bilder gelöscht, die nicht mit dem laufenden Container verknüpft sind. Dies ist möglicherweise etwas extrem, aber Docker lädt die benötigten Images dennoch erneut herunter. Der erste Download ist etwas langsamer, aber das Bild wird anschließend für die zukünftige Verwendung zwischengespeichert.

In den folgenden Abschnitten werden weitere Möglichkeiten zum Löschen bestimmter Elemente beschrieben.

Spiegelräumung

Ein Docker-Image ist ein Festplatten-Snapshot einer Anwendung (beispielsweise eines Webdienstes, einer Laufzeitumgebung für Sprachen oder eines Datenverwaltungssystems). Sie können alle Bilder (sowohl laufende als auch hängende Bilder, also Bilder, die nicht mit Containern verknüpft sind) anzeigen, indem Sie Folgendes eingeben:

Docker-Image ls -a

Ein Docker-Image kann durch Eingabe von: gelöscht werden.

Docker-Image rm <Name_oder_ID>

Diesem Befehl können beliebig viele Bilder hinzugefügt werden – trennen Sie diese durch ein Leerzeichen.

Containerbereinigung

Ein Docker-Container ist eine laufende Instanz eines Images, und vom selben Container aus können beliebig viele Container gestartet werden. Container sind normalerweise klein, da sie zustandslos sind und auf das Dateisystem eines Images verweisen. Zeigen Sie alle laufenden und gestoppten Container an, indem Sie Folgendes eingeben:

Docker-Container ls -a

Sobald ein Container gestoppt ist, können Sie ihn löschen. Der Befehl zum Stoppen des Containers lautet:

Docker-Container stoppen <Name_oder_ID>

Der Befehl zum Löschen des Containers lautet:

Docker-Container rm <Name_oder_ID>

Auch diesem Befehl können Sie eine beliebige Anzahl durch Leerzeichen getrennter Containernamen oder IDs hinzufügen.

Es besteht nur selten die Notwendigkeit, angehaltene Container stehen zu lassen. Sie können dem Docker-Run-Befehl die Option --rm hinzufügen, um den Container nach seiner Beendigung automatisch zu entfernen.

Netzwerksortierung

Container können an ein von Docker verwaltetes Netzwerk angeschlossen werden, sodass sie miteinander kommunizieren können. Dies sind Konfigurationsdateien, die nicht viel Speicherplatz beanspruchen. Zeigen Sie alle Docker-Netzwerke an, indem Sie Folgendes eingeben:

Docker-Netzwerk ls

Um ein oder mehrere ungenutzte Netzwerke zu löschen, geben Sie den folgenden Befehl ein:

Docker-Netzwerk rm <Name_oder_ID>

Auch diesem Befehl können Sie beliebig viele Netzwerknamen oder IDs hinzufügen, getrennt durch Leerzeichen.

Verdampfung des Volumens

Docker-Volumes sind virtuelle Datenträgerabbilder. Es muss an einen laufenden Container angehängt werden, damit es zwischen Neustarts Dateien oder andere Statusinformationen speichern kann. Die Größe des Datenträgers hängt von der Anwendung ab, die ihn verwendet. Eine typische Datenbank benötigt jedoch Hunderte von Megabyte Speicherplatz, auch wenn sie die meiste Zeit leer ist.

Sie können alle von Docker verwalteten Datenträgervolumes mit dem folgenden Befehl anzeigen:

Docker-Volumen ls

Durch das Entfernen eines Docker-Volumes werden seine Daten dauerhaft gelöscht! Es gibt kein Zurück!

Wenn Sie eine datenbankgesteuerte Anwendung entwickeln, können Sie häufig einen oder mehrere Datendumps aufbewahren, mit denen Sie einen bestimmten Datensatzsatz neu erstellen können. Die meisten Datenbank-Clienttools verfügen über eine Dump-Funktion, wie beispielsweise den Export-Link in Adminer.

Die meisten Datenbanksysteme bieten Sicherungsfunktionen, beispielsweise das Dienstprogramm mysqldump in MySQL. Sie können diese Vorgänge mit dem Befehl „Docker Exec“ an einem laufenden Container ausführen.

Der folgende Linux-/macOS-Befehl sichert eine MySQL-Datenbank namens mydb, die auf einem Container namens mysql ausgeführt wird, in einer Datei namens backup.sql. Verwenden des MySQL-Root-Benutzers mit dem Kennwort mysecret:

docker exec mysql /usr/bin/mysqldump -u root -pmysecret mydb \ > backup.sql

Windows PowerShell-Äquivalent:

docker exec mysql /usr/bin/mysqldump -u root -pmysecret -r mydb | \ Set-Content backup.sql

Sie können auch den Befehl „Docker cp“ verwenden, um Datendateien in einen laufenden Container zu kopieren oder aus einem laufenden Container zu entfernen. Dies wird über Quell- und Zielpfade übergeben, wobei der Container durch seinen Namen/seine ID gefolgt von einem Doppelpunkt und seinem Pfad identifiziert wird, z. B.

docker cp mycontainer:/irgendeine/Datei ./Host/Verzeichnis

Vorausgesetzt, Ihre Daten sind sicher, können Sie alle nicht verwendeten Datenträger entfernen, indem Sie Folgendes eingeben:

Docker-Volume rm <Name>

Alle nicht verwendeten Docker-Volumes – diejenigen, die derzeit nicht an einen laufenden Container angehängt sind – können mit folgendem Befehl entfernt werden:

Docker-Volume bereinigen

Alternativ löscht docker volume prune -a alle Volumes. Schließlich haben Sie bereits ein Backup, oder?

Ein völlig sauberer Start

Sie können alle ungenutzten Container, Images, Volumes und Netzwerke mit einem einzigen Befehl bereinigen:

Docker-System beschneiden -a --volumes

Wenn Sie die Bereinigung ohne Bestätigungsaufforderung erzwingen möchten, können Sie -f hinzufügen. Ihr System wird in seinen ursprünglichen Zustand ohne Docker-Daten zurückgesetzt.

Dies ist das Ende dieses Artikels zum vollständigen Bereinigen Ihrer Docker-Daten. Weitere relevante Inhalte zum Bereinigen von Docker-Daten finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Lösung zur Bereinigung des Docker-Festplattenspeichers
  • Gängige Methoden und Probleme der Docker-Bereinigung
  • 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

<<:  Detaillierte Erklärung der Vue-Filter

>>:  Eine kurze Erläuterung des Prinzips des flachen Einstiegs und tiefen Ausstiegs von MySQL

Artikel empfehlen

JavaScript-Datenvisualisierung: ECharts-Kartenerstellung

Inhaltsverzeichnis Überblick Vorsichtsmaßnahmen 1...

MySQL-Datenbank Daten laden, vielfältige Verwendungsmöglichkeiten

Inhaltsverzeichnis Vielfältige Einsatzmöglichkeit...

Beispielerklärung für Ausführungskontext und Ausführungsstapel in JavaScript

JavaScript - Prinzipienreihe Wenn wir in der tägl...

Verwendung des MySQL-Stresstesttools Mysqlslap

1. MySQLs eigenes Stresstest-Tool Mysqlslap mysql...

Implementierung der Leistungsoptimierung des Element-Shuttle-Frames

Inhaltsverzeichnis Hintergrund Lösung Neue Fragen...

Docker-Bereinigungsumgebungsvorgang

Beginnen Sie vorsichtig mit der Reinigung! Auflis...

Detailliertes Tutorial zum Konfigurieren der lokalen Yum-Quelle in CentOS8

Die Centos8-Distribution wird über die BaseOS- un...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.27

Detailliertes Download-, Installations- und Konfi...

Detaillierte Analyse der MySQL MDL-Metadatensperre

Vorwort: Wenn Sie eine SQL-Anweisung in MySQL aus...

Vue.js verwendet Element-ui, um das Navigationsmenü zu implementieren

In diesem Artikel wird der spezifische Code zur I...

W3C Tutorial (15): W3C SMIL Aktivitäten

SMIL fügt Unterstützung für Timing und Mediensync...