Docker-images kunnen veel schijf­ruim­te innemen op uw host­sys­teem en in uw con­tai­ner­re­gis­ter. Wanneer u een on­ge­bruikt of verouderd Docker-image ver­wij­dert, maakt u ruimte vrij voor nieuwe images en gegevens. Dit is vooral handig in om­ge­vin­gen waar de schijf­ruim­te beperkt is.

Wanneer moet u een Docker-image ver­wij­de­ren?

Docker-images worden gemaakt op basis van Doc­ker­fi­les, waarin wordt be­schre­ven hoe de con­tai­ner­in­fra­struc­tuur moet worden ge­con­fi­gu­reerd. Deze images worden gebruikt om Docker-con­tai­ners te starten, die ap­pli­ca­ties of services uitvoeren in een ge­ï­so­leer­de en con­sis­ten­te omgeving.

Een groot aantal images kan de pres­ta­ties van uw Docker-in­fra­struc­tuur be­ïn­vloe­den en bui­ten­spo­rig veel schijf­ruim­te in beslag nemen. Wanneer Docker naar een image zoekt, moet het alle be­schik­ba­re images door­zoe­ken om de juiste te vinden. Daarom kan het ver­wij­de­ren van onnodige Docker-images de ef­fi­ci­ën­tie verhogen en de zoektijd verkorten. Het ver­wij­de­ren van Docker-images die u niet nodig hebt, beschermt uw systeem ook tegen be­vei­li­gings­ri­si­co’s.

Wanneer ont­wik­ke­lings- en testcycli zijn voltooid, moet u alle af­beel­din­gen ver­wij­de­ren die nodig waren voor spe­ci­fie­ke taken tijdens de cycli, maar die nu niet meer nodig zijn. Hierdoor maakt u schijf­ruim­te vrij.

Hoe u een of meer Docker-images kunt ver­wij­de­ren

Als u één Docker-image of meerdere Docker-images tegelijk wilt ver­wij­de­ren, kunt u een lijst met de image-ID’s of -namen doorgeven aan het docker rmi commando.

Stap 1: Maak een lijst met af­beel­dings-ID’s en tags

Gebruik de volgende opdracht om een lijst weer te geven van alle Docker-images op uw systeem:

docker images -a
bash

De uitvoer bevat in­for­ma­tie zoals de naam van de af­beel­ding, het af­beel­dings-ID, de aan­maak­da­tum, de grootte en de maker van de af­beel­ding.

Stap 2: Af­beel­din­gen ver­wij­de­ren

Als u meerdere af­beel­din­gen tegelijk wilt ver­wij­de­ren, kunt u de af­beel­dings-ID’s of af­beel­dings­na­men achter elkaar schrijven en ze scheiden met spaties.

docker rmi Image Image
bash

Houd er rekening mee dat u een Docker-image alleen kunt ver­wij­de­ren als er geen actieve con­tai­ners zijn die deze gebruiken. Voordat u images ver­wij­dert, moet u eerst de con­tai­ners die deze gebruiken stoppen en ver­wij­de­ren.

Hoe on­ge­bruik­te Docker-images ver­wij­de­ren

On­ge­bruik­te Docker-images zijn images die niet langer worden gebruikt door andere images of actieve con­tai­ners. Deze niet-ge­re­fe­reer­de of on­ge­bruik­te images kunnen zich in de loop van de tijd op­sta­pe­len en schijf­ruim­te innemen op uw Docker-host. Het is een goede gewoonte om deze images re­gel­ma­tig te ver­wij­de­ren, zodat uw Docker-omgeving zo efficiënt mogelijk kan werken.

Stap 1: Maak een lijst van on­ge­bruik­te af­beel­din­gen

Om te con­tro­le­ren welke af­beel­din­gen u moet ver­wij­de­ren, kunt u een lijst met on­ge­bruik­te af­beel­din­gen genereren.

docker images -f dangling=true
bash

Stap 2: Verwijder on­ge­bruik­te af­beel­din­gen

Met het volgende commando worden alle on­ge­bruik­te af­beel­din­gen ver­wij­derd, waardoor de op­slag­ruim­te die de af­beel­din­gen eerder in beslag namen, weer vrijkomt.

docker images purge
bash

Hoe Docker-images op basis van een patroon ver­wij­de­ren

Door Docker-images op basis van een specifiek patroon of voor­voeg­sel te ver­wij­de­ren, kunt u een groep images ver­wij­de­ren die iets gemeen hebben. Dit is handig als u een groot aantal images hebt en alleen die images wilt ver­wij­de­ren die tot een spe­ci­fie­ke categorie behoren.

Stap 1: Docker-images weergeven met grep

Je kunt het commando docker images com­bi­ne­ren met grep, zodat alleen de af­beel­din­gen worden weer­ge­ge­ven die aan het patroon voldoen.

docker images -a | grep "pattern"
bash

Stap 2: Docker-images ver­wij­de­ren

Zodra u een patroon hebt gekozen, kunt u af­beel­din­gen filteren die over­een­ko­men met het patroon met awk en de af­beel­dings-ID’s ex­tra­he­ren. Ver­vol­gens kunt u de af­beel­din­gen ver­wij­de­ren met xargs docker rmi.

docker images -a | grep "pattern" | awk '{print $3}' | xargs docker rmi
bash

Hoe alle Docker-images ver­wij­de­ren

Wees zeer voor­zich­tig wanneer u alle Docker-images van uw systeem ver­wij­dert, aangezien deze stap on­om­keer­baar is en ertoe kan leiden dat uw con­tai­ners niet meer opstarten.

Stap 1: Maak een lijst van alle af­beel­din­gen

De eerste stap is om een overzicht te krijgen van alle actieve en inactieve af­beel­din­gen op uw systeem:

docker images -a
bash

Stap 2: Verwijder alle Docker-images

Je kunt nu de uitvoer van de vorige stap doorgeven aan het docker rmi -commando. Hiermee worden al je Docker-images ver­wij­derd.

docker rmi $(Docker-Images -a -q)
bash

In­struc­ties voor het ver­wij­de­ren van Docker-volumes en Docker-con­tai­ners vindt u in onze digitale gids, samen met algemene in­for­ma­tie over Docker en een ge­de­tail­leer­de uitleg over Docker-container volumes.

Ga naar hoofdmenu