Docker: Speicherplatz freigeben

31.05.2016

Docker bietet ein großartiges Tooling zum Erstellen und Verwalten von Applikations-Containern. Wir setzen Docker in unseren Kundenprojekten ein, um einzelne Services zusammen mit ihrere Ausführungsumgebung zu kapseln, um einfach Buildumgebungen bereitstellen zu können oder um maximale Portabilität für unsere Anwendungskomponenten zu erlangen.

Gerade bei der Entwicklung mit Docker werden diese Container relativ häufig erstellt, verändert und gelöscht. Dabei bleiben aber meist einige „Reste“ auf dem Entwicklungsrechner. Dadurch kommt es nach einiger Zeit dazu, dass der Speicherplatz zur Neige geht. Dies liegt vor allem an nicht aufgeräumten Images und Volumes. Docker speichert diese unter Linux unter dem Pfad /var/lib/docker/image bzw. /var/lib/docker/volumes.

Der Platz von nicht mehr genutzten Images, bzw. nicht mehr genutzten Volumes kann man mit folgenden Commands leicht freigeben:

Images: docker rmi $(docker images --quiet --filter "dangling=true")
Volumes: docker volume rm $(docker volume ls -qf dangling=true)

Vor dem Freigeben sollte allerdings geprüft werden, ob die Daten tatsächlich gelöscht werden können. Ein schönes Tooling zum Entfernen nicht mehr genutzter Volumes liefert das GitHub-Projekt chadoe/docker-cleanup-volumes. Es bietet die Möglichkeit, mittels eines –dry-run Flags zu prüfen, welche Volumes gelöscht werden können, ohne diese tatsächlich zu löschen. Alternative Commands zum Aufräumen von Images haben wir hier entdeckt.

Zurück zur Übersicht

Ein Kommentar zur “Docker: Speicherplatz freigeben

  1. Hallo Marc,

    vor dem rm danglings Befehl kann man mit ‚docker volume ls -qf dangling=true‘ die dangling’s volumes anzeigen lassen um unbeabsichtigtes löschen zu vermeiden.

    Jenkins Integrationstests, bei denen die Container nicht ständig laufen müssen, produzieren dangling’s so lange diese gestoppt sind.

Kommentar verfassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

*Pflichtfelder

*