Lösung zur Bereinigung des Docker-Festplattenspeichers

Lösung zur Bereinigung des Docker-Festplattenspeichers

Vor einiger Zeit stieß ich auf das Problem, dass der Docker-Festplattenspeicher zu klein war und keine Daten geschrieben werden konnten. Der Grund war, dass ich mehrere MySQL-Container lokal (Mac Pro) ausgeführt und einige Online-Daten importiert habe. Am Ende war kein freier Speicherplatz mehr vorhanden, bevor der Import abgeschlossen war.

Ich habe Docker zunächst 80 GB Festplattenspeicher zugewiesen und als das Schreiben fehlschlug, waren nur noch 0,6 GB übrig.

Mit dem folgenden Befehl können Sie die Festplattennutzung von Docker-Containern und -Images anzeigen:

Docker-System df

Sie können eine Ausgabe ähnlich der folgenden sehen, einschließlich Bilder, Container, lokale Datenträger und Build-Cache:

TYP GESAMT AKTIV GRÖSSE WIEDERVERWENDBAR
Bilder 5 5 5.158GB 0B (0%)
Container 6 6 7,601 MB 0 B (0 %)
Lokale Volumes 4 3 46,64 GB 207 MB (0 %)
Build-Cache 34 0 1,609 MB 1,609 MB

Es ist ersichtlich, dass von den oben genannten vier Typen lokale Volumes den größten Speicherplatz beanspruchen. Wenn Sie einen detaillierteren Bericht anzeigen möchten, verwenden Sie den folgenden Befehl.

Docker-System df -v

Sie können zahlreiche Ausgaben sehen, unter anderem die folgende zu lokalen Volumes:

VOLUMENNAME LINKS GRÖSSE
641d4976908910dca270a2bf5edf33408daf7474a0f27c850b6580b5936b6dd0 1 40,1 GB
ovpn-Daten 1 33,51 kB
267b52c5eab8c6b8e0f0d1b02f8c68bdaffba5ea80a334a6d20e67d22759ef48 1 6,325 GB
f4a3866ef41e3972e087883f8fa460ad947b787f2eafb6545c759a822fb6e30d 0 207 MB

Um Speicherplatz freizugeben, ist die erste einfache und grobe Methode, die mir in den Sinn kommt, alle gestoppten Container zu löschen. Der Befehl lautet wie folgt.

Docker-System bereinigen -a

Bei der Verwendung dieses Befehls sollten Sie jedoch vorsichtig sein. Denken Sie daran, zuerst alle Docker-Container zu starten, die Sie verwenden müssen. Andernfalls werden die Container, die noch nicht gestartet wurden, durch diesen Befehl gelöscht. Aus Sicherheitsgründen löscht dieser Befehl standardmäßig keine Datenvolumes, auf die kein Container verweist. Wenn Sie diese Datenvolumes gleichzeitig löschen müssen, müssen Sie explizit --volumns angeben.

Wenn Sie also Container, Netzwerke, Bilder und Datenträger zwangsweise löschen möchten, können Sie den folgenden Befehl verwenden.

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

Die zweite Methode besteht darin, den Pfad, in dem Docker Daten speichert, an einen anderen Ort mit mehr Speicherplatz zu ändern. Wenn Sie ein Mac-Benutzer sind, können Sie die Einstellung für den Speicherort des Disk-Images in den grafischen Docker-Desktop-Einstellungen ändern.

Ich habe die zweite Methode ausprobiert, indem ich den Speicherort des Disk-Images auf eine externe SSD geändert und zuerst versucht habe, die vorherigen Daten dort zu synchronisieren. Später stellte ich ein großes Problem fest: Das Importieren von Daten in den MySQL-Container ist sehr langsam. Dies ist wahrscheinlich der Schreibengpass der externen SSD im Docker-Container.

Wenn Sie nur ein paar Container ausführen und keine Datenbankdaten lokal speichern möchten, ist das Speichern von Docker-Daten auf einer SSD eine gute Idee.

Dies ist das Ende dieses Artikels über die Lösung zur Bereinigung des Docker-Festplattenspeichers. Weitere relevante Inhalte zur Bereinigung des Docker-Festplattenspeichers 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:
  • Über Dockers Bereinigung des von Overlay2 belegten Speicherplatzes (getestet und wirksam)
  • Lösen Sie das Problem des unzureichenden Docker-Festplattenspeichers
  • So bereinigen Sie den von Docker belegten Speicherplatz
  • So analysieren und bereinigen Sie die Festplattenspeichernutzung von Docker
  • Lösung für das Problem, dass Docker den gesamten Speicherplatz einnimmt
  • Lösung für das Problem des unzureichenden Speicherplatzes und der Unzugänglichkeit durch Docker-Container

<<:  Tiefgreifendes Verständnis der Verwendung von CSS clear:both

>>:  Beispiele für personalisiertes und kreatives Website-Design (30)

Artikel empfehlen

js realisiert die Bildschneidefunktion

In diesem Artikelbeispiel wird der spezifische Co...

Der Prozess der Bereitstellung eines Projekts auf einem anderen Host mit Jenkins

Umfeld Hostname IP-Adresse Aufschlag Jenkins 192....

Einführung in die gängigen Festplattenverwaltungsbefehle von Linux

Inhaltsverzeichnis 1. df-Befehl 2. du-Befehl 3. B...

CSS zum Erzielen von leuchtendem Text und ein paar JS-Spezialeffekten

Umsetzungsideen: Verwenden Sie text-shadow in CSS...

Ist das Tag „li“ ein Blockelement?

Warum kann es die Höhe festlegen, aber im Gegensat...

Details zur MySQL-Transaktionsisolationsebene

serializable Serialisierung (kein Problem) Transa...

So fügen Sie ein Lua-Modul zu Nginx hinzu

Lua installieren wget http://luajit.org/download/...

Das WeChat-Applet implementiert die Aufnahmefunktion

In diesem Artikel wird der spezifische Code für d...

Eine kurze Analyse der Unterschiede zwischen px, rem, em, vh und vw in CSS

Absolute Länge px px ist der Pixelwert, also eine...

So verstehen Sie die Modularität von JavaScript

Inhaltsverzeichnis 1. Browserunterstützung 2. Exp...

Vue implementiert horizontales Scrollen von Text im Laufschriftstil

In diesem Artikel wird der spezifische Code für V...

Mobiles Internet-Zeitalter: Responsive Webdesign ist zum allgemeinen Trend geworden

Wir befinden uns in einer Ära der rasanten Entwick...

Gutes Website-Copywriting und gute Benutzererfahrung

Das Betrachten einer Website ist eigentlich wie di...