Docker is tegenwoordig een van de meest populaire producten in organisaties. Het maakt het proces van het beheren van applicaties in containers heel eenvoudig. Docker biedt portabiliteit, prestaties, flexibiliteit, schaalbaarheid en isolatie aan de applicaties omdat het containers gebruikt. Containers zijn draagbaarder en vereisen minder bronnen dan virtuele machines. Naarmate u met Docker werkt, heeft u de neiging om een overmatige hoeveelheid ongebruikte images, volumes en containers te verzamelen. Deze bronnen vervuilen de uitvoer en verbruiken veel schijfruimte. In deze handleiding leert u hoe u Docker-bronnen opschoont en uw server organiseert.
Alles opschonen
U kunt alle Docker-bronnen, inclusief images, gestopte containers, volumes en netwerken, met één enkele opdracht opschonen. U kunt een van de onderstaande opties kiezen:
Referentie: Dangling bronnen zijn degene die niet gerelateerd zijn aan een actieve container.
Optie 1:
|
1 |
docker system prune |
– alle gestopte containers
– alle netwerken die niet door ten minste één container worden gebruikt
– alle dangling images
– alle dangling build-cache
Optie 2:
|
1 |
docker system prune -a |
– alle gestopte containers
– alle netwerken die niet door ten minste één container worden gebruikt
– alle images waarmee niet ten minste één container is geassocieerd
– alle build-cache
Optie 3:
|
1 |
docker system prune -a --volumes |
– alle gestopte containers
– alle netwerken die niet door ten minste één container worden gebruikt
– alle volumes die niet door ten minste één container worden gebruikt
– alle images waarmee niet ten minste één container is geassocieerd
– alle build-cache

Docker-images verwijderen
Om een specifieke image te verwijderen, moet u de image-ID weten. U kunt de image-ID van een Docker-container vinden met behulp van de opdracht “docker images”, zoals uitgelegd in onze handleiding over hoe u Docker installeert & bedient op Ubuntu.
Images weergeven:
|
1 |
docker images |
Image verwijderen:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
docker rmi <Image ID> Voorbeeld: docker rmi 1d622ef86b13 Uitvoer: Untagged: ubuntu:latest Untagged: ubuntu@sha256:747d2dbbaaee995098c9792d99bd333c6783ce56150d1b11e333bbceed5c54d7 Deleted: sha256:1d622ef86b138c7e96d4f797bf5e4baca3249f030c575b9337638594f2b63f01 Deleted: sha256:279e836b58d9996b5715e82a97b024563f2b175e86a53176846684f0717661c3 Deleted: sha256:39865913f677c50ea236b68d81560d8fefe491661ce6e668fd331b4b680b1d47 Deleted: sha256:cac81188485e011e56459f1d9fc9936625a1b62cacdb4fcd3526e5f32e280387 Deleted: sha256:7789f1a3d4e9258fbe5469a8d657deb6aba168d86967063e9b80ac3e1154333f |
Dangling images verwijderen:
Wanneer u een Docker-image bouwt, heeft deze over het algemeen verschillende lagen van images. Dangling images zijn de lagen die geen enkele relatie hebben met een getagde image. Dangling images verbruiken schijfruimte maar dienen geen enkel doel. Ze kunnen worden weergegeven met de opdracht:
|
1 |
docker images -f dangling=true |
U kunt deze images verwijderen door de volgende opdracht uit te voeren:
|
1 |
docker image prune |
Images verwijderen op basis van een patroon
U kunt eenvoudig images vinden op basis van een specifiek patroon met behulp van de opdracht “grep” en deze vervolgens verwijderen door deze door te geven aan de opdracht “docker rmi” met behulp van “awk”. U kunt de volgende opdrachten gebruiken en het “patroon” in elk van hen vervangen:
Weergeven:
|
1 |
docker images -a | grep "pattern" |
Verwijderen:
|
1 |
docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi |
Alle images verwijderen
Je kunt alle docker-images weergeven met het commando:
|
1 |
docker images -a |
Zodra je hebt besloten ze allemaal te verwijderen, kun je dit commando gebruiken om ze allemaal te verwijderen:
|
1 |
docker images -a -q | xargs docker rmi |
Containers verwijderen:
Nu je alle onnodige images hebt opgeruimd, is het tijd om een aantal containers te verwijderen die niet meer nodig zijn.
Om de containers weer te geven, kun je het commando gebruiken:
|
1 |
docker ps -a |
Gebruik het volgende commando om de containers te verwijderen:
|
1 |
docker rm <<Container Naam/Container ID>> |
Containers tijdelijk uitvoeren
Als je de container slechts eenmaal wilt uitvoeren, kun je ervoor kiezen om de container automatisch te verwijderen zodra deze stopt. Dit kun je doen met het commando:
|
1 |
docker run --rm <<ImageNaam>> |
Gestopte containers verwijderen
Je kunt de gestopte containers filteren met het argument “-f”. Toon de gestopte containers met het commando:
|
1 |
docker ps -a -f status=exited |
Nu je ze hebt gefilterd, verwijder je ze met dit commando:
|
1 |
docker rm $(docker ps -a -f status=exited -q) |
Containers verwijderen op basis van een patroon
Je kunt eenvoudig containers vinden op basis van een specifiek patroon met het commando “grep” en ze vervolgens verwijderen door dit door te geven aan het commando “docker rm” met behulp van “awk”. Je kunt de volgende commando's gebruiken en het “patroon” in elk van hen vervangen.
Lijst:
|
1 |
docker ps -a | grep "pattern" |
Verwijderen:
|
1 |
docker ps -a | grep "pattern" | awk '{print $1}' | xargs docker rm |
Alle containers stoppen en verwijderen
Voordat je dit doet, controleer je alle containers op je server door ze op te lijsten. Pas als je er zeker van bent dat je ze wilt verwijderen, voer je de volgende commando's uit:
Geef de containers weer ter controle:
|
1 |
docker ps -a |
Stoppen en verwijderen:
|
1 2 |
docker stop $(docker ps -a -q) docker rm $(docker ps -a -q) |
Volumes verwijderen
Een specifiek volume verwijderen
Om een specifiek volume te verwijderen, moet je de volumenaam weten. Om daarachter te komen, kun je de volumes weergeven.
Lijst:
|
1 |
docker volume ls |
Verwijderen:
|
1 |
docker volume rm <<Volumenaam>> |
Dangling volumes verwijderen
Wanneer je een container verwijdert, wordt het daaraan gekoppelde volume niet automatisch verwijderd. Een dergelijk volume wordt een dangling volume genoemd. Om dergelijke volumes te vinden, gebruik je het filterargument in het commando:
|
1 |
docker volume ls -f dangling=true |
Om al deze dangling volumes te verwijderen, gebruik je het commando:
|
1 |
docker volume prune |
Een container en zijn naamloze volume verwijderen
Als je een anoniem of naamloos volume hebt gemaakt tijdens het uitvoeren van de container, kun je dit samen met de container verwijderen met één enkel commando. Als het volume echter een naam heeft, wordt alleen de container verwijderd.
|
1 |
docker rm -v <<Containernaam>> |
Nu je deze cheat sheet hebt, ben je klaar om Docker-resources op te ruimen die niet meer nodig zijn op je server.
Veel succes!


Reacties
Nog geen reacties. Wees de eerste.