Wie behebe ich Docker keinen Speicherplatz mehr auf dem Gerät?

How Do I Fix Docker No Space Left Device



Um Speichertreiber erfolgreich verwenden zu können, müssen Sie zunächst verstehen, wie Docker Images erstellt und speichert und wie Container diese Images verwenden. Sie können diese Daten verwenden, um fundierte Entscheidungen darüber zu treffen, wie Sie Daten aus Ihren Anwendungen optimal nutzen und gleichzeitig Leistungsprobleme vermeiden. Mit Speichertreibern können Sie Daten in die beschreibbare Schicht Ihres Containers schreiben. Nachdem der Container zerstört wurde, werden die Dateien nicht gespeichert und die Lese- und Schreibraten sind langsamer als die Leistung der nativen Dateianwendung. Möglicherweise möchten Sie die Festplatte Ihres Systems bereinigen, um das Docker-Image herunterzuladen und auszuführen. Wenn Sie jedoch nicht genügend Speicherplatz auf Ihrer Festplatte haben, können Sie die Fehlermeldung erhalten: kein Platz mehr auf dem Gerät. Wenn Ihr Server mit Mülldateien verstopft ist, kann dies dazu führen, dass der PC langsamer wird. Sie müssen eine bestimmte Menge an Speicherplatz zurückfordern, um das Problem zu beheben. Die Dot-Cloud-Container-Engine erfordert relativ einfaches Skripting, um den Speicher zu löschen. Dieses Problem weist normalerweise darauf hin, dass Docker nicht mehr genügend Speicherplatz hat. /var/lib/docker speichert seine Daten. Dieses Verzeichnis muss auf jedem Dateisystem, auf dem es eingehängt ist, über ausreichend freien Speicherplatz verfügen. In diesem Tutorial lernen Sie verschiedene Methoden kennen, um Docker zu reparieren, wenn kein Platz mehr auf dem Gerät übrig ist.

Voraussetzungen

Um Docker keinen Platz mehr auf dem Gerät zu reparieren, müssen Sie das Ubuntu 20.04 Linux-System und die Docker-Installation darin verwenden. Wenn Docker nicht installiert ist, können Sie dies mit Hilfe des unten aufgeführten Befehls im Terminal tun







$sudogeeignetInstallierendocker.io

Methode, um Docker zu reparieren, der keinen Platz mehr auf dem Gerät hat

Sie müssen sich über sudo user anmelden und das Kommandozeilenterminal öffnen, indem Sie es im Anwendungsbereich Ihres Betriebssystems überprüfen oder die Tastenkombination Strg+Alt+T verwenden. Befolgen Sie nach dem Öffnen alle in diesem Artikel beschriebenen Methoden.



Methode 1: Docker System Prune

Der Befehl „docker system prune“ wird verwendet, um ungenutzte Objekte oder Daten, einschließlich Images, Container, Volumes und Netzwerke, zu entfernen oder zu löschen. Diese Objekte werden nicht gelöscht, es sei denn, wir entfernen sie bewusst; Trotzdem müssen wir in Docker 17.06.1 oder höher die Möglichkeit „–volumes“ benötigen, um Volumes zu entfernen. Es eliminiert sowohl hängende als auch nicht referenzierte Bilder; jedoch werden nur standardmäßig baumelnde Bilder entfernt. Die „Docker-System-Prune“ kann nur mit einer Client- und Daemon-API-Version 1.25 oder höher verwendet werden. Führen Sie nun den aufgeführten Befehl aus:



$sudoDocker-SystemPflaume





Für die erfolgreiche Ausführung müssen Sie Ihr sudo-Benutzerkennwort angeben. Bei der Ausführung erhalten Sie die folgende Warnung, wie im angehängten Bild gezeigt. Sie müssen y eingeben, um mit dem Vorgang fortzufahren. Wenn wir den Befehl „docker system prune“ implementieren, sendet er eine API-Anfrage an den Docker-Daemon, der nach allen nicht verwendeten Elementen auf dem Host sucht und sie aus dem System löscht. Da frühere Versionen von Docker alle Objekte, einschließlich Volumes, entfernt haben, wurde die Option „–volumes“ hinzugefügt.

Methode 2: Entfernen von hängenden Bildern

Dazu kann der volume-Befehl in Docker verwendet werden. Da dadurch alle Verzeichnisse oder Ordner in /var/lib/docker/volumes gelöscht werden, die kein Volume sind, müssen Sie sicherstellen, dass dort keine wichtigen Dokumente gespeichert werden. Beim Erstellen eines Docker-Images gibt es normalerweise zahlreiche Image-Layer. Ebenen, die keinen Bezug zu einem mit Tags versehenen Bild haben, werden als baumelnde Bilder bezeichnet. Hängende Bilder beanspruchen Speicherplatz, tun aber nichts. Um eine Liste aller Volumes anzuzeigen, verwenden Sie den Befehl:



$sudoDocker-Volumels

Verwenden Sie den folgenden Befehl, um eine Liste aller baumelnden Volumes abzurufen:

$sudoDocker-Volumels–qfbaumelnd=wahr

Für die erfolgreiche Ausführung müssen Sie Ihr sudo-Benutzerkennwort angeben.

Methode 3: Entfernen von verwaisten Volumes

Um zu beginnen, müssen Sie alle verwaisten Volumes in Docker löschen. Um nun alle verwaisten Volumes loszuwerden, führen Sie den folgenden Befehl aus:

$Docker-Volumerm

Abschluss:

In diesem Handbuch haben wir einige Methoden besprochen, um den Docker-Fehler bei einem Gerätefehler zu beseitigen. Nun, ich glaube, Sie können dies leicht an Ihrem Ende angehen, indem Sie diesem Tutorial folgen.