So bereinigen und löschen Sie Docker-Images

0
635

Docker-Images können sehr groß sein, und wenn Sie häufig mit Containern arbeiten, Es kann viel Speicherplatz in Anspruch nehmen. Wir besprechen, wie Sie Ihre heruntergeladenen Images bereinigen und alte Dateien löschen, die Sie nicht benötigen.

Docker Images vs. Docker Container

Docker Images behandeln ihre Daten anders als Container. Images sind schreibgeschützte Dateien, die aus Dockerfiles erstellt und an den Docker Hub gepusht werden. Jedes Mal, wenn Sie eine neue Version herunterladen, muss Docker die Dateien für diese neue Version herunterladen. Alte Versionen werden immer noch auf Ihrem lokalen Laufwerk gespeichert.

Container werden aus Bildern erstellt und haben normalerweise ein eigenes Dateisystem und eigene Volumes. Wenn Sie den Container stoppen, werden alle Daten, die nicht auf einem Volume gespeichert sind, gelöscht. Um die von Containern verwendeten Daten zu bereinigen, müssen Sie sie einfach anhalten und ihre Volumes löschen.

Um Images zu bereinigen, bietet Docker einige Befehle zum Ausführen der Garbage Collection.

Bilder beschneiden

Sie werden unweigerlich Bilder erhalten, die nicht verwendet werden, seien es alte Versionen von Bildern oder Bilder aus Containern, die nicht aktiv ausgeführt werden. Auf jeden Fall stellt das Löschen eines Images normalerweise kein Problem dar. Wenn Sie es erneut benötigen, kann Docker es einfach aus dem Remote-Repository abrufen.

Werbung

Um alle auf Ihrem System gespeicherten Images anzuzeigen, Sie können den folgenden Befehl verwenden:

docker image ls

Obwohl alle diese Versionen in dieser Ausgabe viel Platz beanspruchen, werden verschiedene Versionen inkrementell gespeichert, sodass nur die Änderungen der neuen Version tatsächlich auf der Festplatte gespeichert werden.

Sie können ein angegebenes Bild manuell entfernen it’s image ID:

docker image rm 3a8d8f76e7f8f

Eine viel sicherere Methode ist jedoch die Verwendung des integrierten prune-Befehls, der alle Bilder durchsucht, um diejenigen ohne aktive Referenzen zu finden und zu löschen :

docker image prune -a

Wenn Sie das -a Tag weglassen, bleiben Bilder, die mit Tags versehen sind, aber nicht verwendet werden. Mit dem Flag bleiben nur Bilder übrig, die Sie aktiv verwenden.

Der Befehl prune zeigt Ihnen an, wie viel Speicherplatz freigegeben wurde. Wenn Sie jedoch manuell überprüfen möchten, wie viel Speicherplatz Docker zuvor verwendet hat, und Danach können Sie du -sh im Docker-Speicherverzeichnis verwenden:

sudo du -sh /var/lib/docker/Advertisement

Dieses Verzeichnis befindet sich unter C:ProgramDataDockerDesktop unter Windows und ~/Library/Containers/com.docker.docker/Data/vms/0/ auf macOS.