Als ich angefangen habe Docker zu nutzen, kam mir das alles etwas surreal und kompliziert vor. Mittlerweile habe ich mich akklimatisiert und nutze Docker mit großer Freude (bald auch produktiv). Das einzige was etwas stört ist der Verbrauch, der ist nämlich nicht zu verachten.
Gerade wenn man mit größeren DB und Filesystemen arbeitet nimmt Docker schnell mal 50-75 GB an Volumes, Images usw. ein. Da bleibt einem nichts andere übrig als hin und wieder aufzuräumen oder sich eine 1TB SSD zu holen – da Ordnung sein muss und ich vermute das ein überfülltes /varlib/docker Verzeichnis nicht sonderlich förderlich für die Perfomance ist möchte ich hier mal kurz zeigen wie man am besten sein System cleaned.
WICHTIG: Ich gehe davon aus, das keine der Daten aus builds mehr benötigt werden. Einige der Befehle löschen bereits gebaute Container und deren Volumes/Netzwerke komplett!
Docker Verbrauch auslesen
Um den aktuellen Datenträgerverbrauch auszulesen einfach
docker system df
nutzen.
TYPE TOTAL ACTIVE SIZE RECLAIMABLE Images 0 0 0B 0B Containers 0 0 0B 0B Local Volumes 53 0 49.69GB 49.69GB (100%) Build Cache 0B 0B
Um nun etwas Platz zu schaffen können wir
docker system prune -a
ausführen. Damit werden alle ungenutzten Daten entfernt.
WARNING! This will remove: - all stopped containers - all volumes not used by at least one container - all networks not used by at least one container - all images without at least one container associated to them
Bei mir werden in diesem Fall 1.3 Gigabyte freigegeben, ein Hauch von den vorhandenen 49 Gigabyte. Wo ist hier also der Speicherfresser, der liegt bei mir in den Volumes, also diese einfach mit
docker volume rm $(docker volume ls -qf dangling=true)
löschen.
Docker Daten in macOS cleanen
In macOS geht das relativ simpel einfach den Reset Button (Bombe mit Zündschnur) klicken und alle Container, Images, Netzwerke etc. werden gelöscht.