Filtern von Volumes nach "dangling"-Status
In diesem Schritt lernen wir, wie man Docker-Volumes (Docker-Datenträger) anhand ihres "dangling"-Status (ungeordneter Status) filtern kann. Ein "dangling" Volume ist ein Volume, das derzeit keinem Container zugeordnet ist. Diese Volumes können unnötig Speicherplatz belegen.
Um nach "dangling" Volumes zu filtern, verwenden wir die Option --filter dangling=true
.
Zunächst erstellen wir einen Container und ordnen ihm eines unserer Volumes zu. Wir verwenden das ubuntu
-Image. Wenn Sie das ubuntu
-Image nicht lokal haben, lädt Docker es automatisch herunter.
docker run -d --name mycontainer -v myvolume:/app ubuntu sleep 3600
Dieser Befehl startet einen Container namens mycontainer
im detached-Modus (-d
), bindet das Volume myvolume
an das Verzeichnis /app
innerhalb des Containers (-v myvolume:/app
), verwendet das ubuntu
-Image und lässt den Container für eine Stunde laufen (sleep 3600
).
Nun listen wir alle Volumes erneut auf:
docker volume ls
Sie werden sowohl myvolume
als auch another_volume
sehen. myvolume
wird derzeit von mycontainer
verwendet. another_volume
ist keinem Container zugeordnet, es ist also ein "dangling" Volume.
Nun filtern wir nach "dangling" Volumes:
docker volume ls --filter dangling=true
In der Ausgabe sollte another_volume
aufgeführt sein, da es keinem laufenden Container zugeordnet ist.
Um Volumes anzuzeigen, die nicht "dangling" sind (d. h., die einem Container zugeordnet sind), können Sie --filter dangling=false
verwenden.
docker volume ls --filter dangling=false
Dies sollte myvolume
anzeigen.
Schließlich stoppen und entfernen wir den von uns erstellten Container.
docker stop mycontainer
docker rm mycontainer
Wenn Sie nun erneut "dangling" Volumes auflisten:
docker volume ls --filter dangling=true
Sowohl myvolume
als auch another_volume
sollten nun als "dangling" erscheinen, da myvolume
keinem Container mehr zugeordnet ist.