# Docker op de Mac opruimen: images, buildcache, volumes

> Bekijk images, containers, buildcache en volumes met status voordat je pruned, en meet het gebruik van de sparse schijf apart van wat Docker rapporteert.

Published: 2026-06-26 | Updated: 2026-10-18

Docker Desktop kan tientallen gigabytes gebruiken omdat images, beschrijfbare containerlagen, buildcache en volumes in een virtuele Linux-schijf leven. Deze categorieën zijn niet even wegwerpbaar. Buildcache is meestal opnieuw te maken. Een databasevolume kan de enige kopie van belangrijke gegevens zijn. Veilig opruimen begint bij de inventaris van Docker, niet bij de breedste prune-opdracht. Als je Docker Desktop wilt verwijderen in plaats van ruimte erin vrij te maken, zie [Docker Desktop op de Mac verwijderen](https://mole.fit/tested-apps/docker).

## Waarom de ruimte van Docker niet terugkomt

Docker Desktop op macOS draait een Linux-VM en bewaart zijn gegevens normaal in een sparse virtuele schijf met de naam `Docker.raw`. De [opslaggids voor Mac](https://docs.docker.com/desktop/troubleshoot-and-support/faqs/macfaqs/#where-does-docker-desktop-store-linux-containers-and-images) van Docker wijst naar **Docker Desktop > Settings > Resources > Advanced** voor de locatie, de schijflimiet en de werkelijk gebruikte ruimte. Verplaats hem met die regelaar, niet met de Finder. Een sparse bestand heeft een maximale logische grootte en een kleinere fysieke toewijzing, dus `ls -lh` alleen kan het veel groter laten lijken dan de capaciteit die het nu inneemt.

Bekijk wat Docker zelf denkt te gebruiken:

```
docker system df -v
```

De gedetailleerde weergave splitst images, containers, lokale volumes en buildcache uit. "Reclaimable" betekent dat Docker geen huidige verwijzing ziet die het object vereist. Het bewijst niet dat je een gestopte container, een oude image of een volume morgen niet nodig hebt. Bekijk ook `docker ps -a` en `docker volume ls` voordat je pruned.

## Begin met smal opruimen

Win altijd terug van binnen Docker, niet door het virtuele-schijfbestand te verwijderen. Begin met de categorie die je begrijpt:

```
docker builder prune --filter until=168h
docker image prune
docker container prune
```

De eerste opdracht verwijdert buildcache ouder dan zeven dagen. Pas de leeftijd aan je werk aan. De volgende twee vragen om bevestiging voordat ze loshangende images en gestopte containers verwijderen. Draai `docker system df -v` opnieuw na elke stap, zodat je ziet welke actie ertoe deed.

De [prunegids](https://docs.docker.com/engine/manage-resources/pruning/) van Docker documenteert `docker system prune` als een bredere gemaksopdracht. `-a` toevoegen verwijdert alle ongebruikte images, niet alleen loshangende lagen. `--volumes` toevoegen breidt de bewerking uit naar ongebruikte anonieme volumes, die databasebestanden of andere status kunnen bevatten. Maak `docker system prune -a --volumes` geen standaard opruimopdracht. Bekijk vóór elke volume-prune namen en eigendom:

```
docker volume ls
docker volume inspect <volume-name>
```

Volumes die Compose maakt dragen normaal project- en servicelabels. Bepaal het project dat ze bezit en exporteer of maak een reservekopie van gegevens die niet opnieuw te bouwen zijn voordat je het volume verwijdert.

## De schijfimage zelf terugwinnen

Kun je `Docker.raw` verwijderen om de ruimte terug te winnen? Niet als een verwijdering in de Finder. Het bestand is de hele schijf van de Linux-VM, dus het in de Finder of met `rm` verwijderen vernietigt elke image, container en elk volume erin, niet alleen de speling, en Docker bouwt bij de volgende start een lege schijf. Win terug van binnen Docker: prune, laat daarna de sparse schijf blokken teruggeven, en gebruik Settings voor de locatie en de limiet van de schijfimage. Het enorme getal dat je ziet is vaak het logische maximum van een sparse bestand, niet de fysieke ruimte in gebruik, dus meet de werkelijke toewijzing voordat je aanneemt dat alles terug te winnen is.

Na een prune bestaan vrije blokken binnen het Linux-bestandssysteem voordat macOS ze noodzakelijk van de sparse schijf ontvangt. De huidige documentatie van Docker zegt dat een `Docker.raw`-image in aanmerking komende ruimte op de host normaal binnen seconden teruggeeft. Oudere `Docker.qcow2`-images gebruiken een achtergrondproces dat minuten kan duren. Meet het werkelijke schijfgebruik opnieuw in plaats van het logische maximum van het bestand te beoordelen. Een fabrieksreset is geen compactie: die vernietigt lokale containers, images, volumes en instellingen. Gebruik die alleen wanneer dat volledige verlies bewust is en belangrijke volumegegevens zijn geëxporteerd.

## Onder de motorkap: waarom het bestand groeit en niet krimpt

Docker Desktop draait een Linux-VM, en `Docker.raw` is de virtuele schijf van die VM: een sparse bestand dat groeit terwijl de gast schrijft, maar niet altijd meteen ruimte teruggeeft aan macOS wanneer de gast verwijdert. Een image verwijderen markeert blokken als vrij binnen het bestandssysteem van de VM. Docker Desktop kan daarna TRIM/discard en compactie gebruiken om in aanmerking komende blokken aan de host terug te geven. De timing hangt af van de versie en de implementatie van de schijfimage. Daarom moeten een logische opruiming en een capaciteitswijziging op hostniveau apart worden gemeten, en daarom vernietigt het hostbestand verwijderen de containers, images en volumes die erin staan.

<figure class="blog-diagram">
  <img src="https://mole.fit/img/blog/docker-raw-growth.webp" width="1360" height="454" loading="lazy" alt="Een sparse Docker.raw-bestand groeit terwijl de gast-VM schrijft en kan in aanmerking komende blokken via discard en compactie aan macOS teruggeven.">
  <figcaption>Een Docker-object verwijderen maakt eerst ruimte vrij binnen de VM. Fysieke toewijzing aan macOS teruggeven is een aparte stap van de sparse schijf.</figcaption>
</figure>

## Waar een schijfkaart helpt

Een schijfkaart zoals de Analyseweergave van [Mole](https://mole.fit/) kan de virtuele schijf en zijn fysieke voetafdruk zichtbaar maken. De eigen CLI van Docker moet beslissen welke interne objecten een verwijzing hebben. De twee weergaven beantwoorden verschillende vragen: macOS toont waar capaciteit is toegewezen, terwijl Docker uitlegt wat die toewijzing bevat.

## Een veilige volgorde

Draai `docker system df -v`, bepaal oude projecten en volumes met status, exporteer unieke gegevens, en prune één categorie tegelijk. Controleer zowel de interne totalen van Docker als de fysieke capaciteit van macOS opnieuw. Gebruik brede prune-vlaggen alleen nadat je hun uitgebreide bereik hebt bekeken, en gebruik een fabrieksreset nooit als een routine-snelkoppeling om ruimte terug te winnen. De snelste veilige winst is meestal oude buildcache, niet onbekende volumes.

---

Canonical HTML page: https://mole.fit/nl/blog/how-to-clean-up-docker-mac
Blog index for agents: https://mole.fit/nl/blog/llms.txt
Site index for agents: https://mole.fit/llms.txt
