Docker updaten kan drie totaal verschillende dingen betekenen. Misschien moet je Docker Engine, Docker Desktop of de images waarop je containers draaien updaten.
De meeste developers weten niet wat ze precies moeten updaten, dus updaten ze óf alles (met het risico hun setup te breken) óf ze vermijden updates volledig (en stellen zich bloot aan kwetsbaarheden). Om Docker veilig te updaten, hoef je alleen te weten wat je updatet en de juiste stappen per scenario te volgen.
In dit artikel neem ik je mee langs de veiligste, meest gebruikelijke updatepaden zonder giswerk. Je leert wat elk type Docker-update precies doet, wanneer je welke nodig hebt en hoe je stap voor stap updates uitvoert zonder je bestaande containers te breken.
Ben je nieuw met Docker, begin dan met Introduction to Docker om een basis op te bouwen voordat je aan updates en onderhoud werkt.
Wat betekent "Docker updaten" nu eigenlijk?
Zoals gezegd kan de term "Docker updaten" naar drie verschillende dingen verwijzen, en ze door elkaar halen is hoe je per ongeluk een werkend systeem kunt breken. Je kunt de Docker Engine (de kernsoftware die containers draait), Docker Desktop (de GUI-app) of de containerimages die je applicaties gebruiken updaten.
Elk type update beïnvloedt je systeem op een andere manier. Laat me het uitleggen.
Docker Engine updaten vs. images updaten
Docker Engine is de runtime die je containers beheert.
Wanneer je Docker Engine updatet, upgrade je de software die containers aanmaakt, draait en beheert op je systeem. Dit is een wijziging op systeemniveau die beïnvloedt hoe Docker werkt. Je installeert nieuwe binaries, werkt de daemon bij en verandert mogelijk hoe Docker met je besturingssysteem omgaat.
Containerimages zijn de blauwdrukken waar je containers van draaien.
Een image updaten betekent een nieuwere versie van de applicatie binnen die container ophalen. Als je bijvoorbeeld PostgreSQL 14 in een container draait en wilt upgraden naar PostgreSQL 18, betekent de image updaten dat je die nieuwe versie ophaalt. De Docker Engine zelf verandert niet - alleen de software binnen je containers.
Het belangrijkste om te onthouden is dat het updaten van Docker Engine al je containers kan beïnvloeden, terwijl het updaten van een image alleen containers raakt die van die specifieke image zijn gebouwd.
Wat er gebeurt met draaiende containers
Docker Engine-updates herstarten je containers niet automatisch.
Als je Docker Engine op Linux updatet, wordt de Docker-daemon herstart, maar je containers blijven draaien in de meeste moderne setups. Docker gebruikt een functie genaamd live restore die containers in leven houdt tijdens daemon-updates. Je kunt controleren of het is ingeschakeld met docker info en zoeken naar "Live Restore Enabled: true."
Docker Desktop is een ander verhaal.
Op macOS en Windows stopt Docker Desktop alle draaiende containers tijdens het updaten. De volledige Docker-VM wordt herstart tijdens het updateproces. Je containers starten niet automatisch na de update. Je moet ze handmatig starten of herstartbeleid gebruiken.
Image-updates vereisen dat je containers opnieuw aanmaakt.
Een nieuwe imageversie pullen raakt draaiende containers helemaal niet. Als je de geüpdatete image wilt gebruiken, moet je de oude container stoppen, verwijderen en een nieuwe aanmaken op basis van de geüpdatete image.
Daarom is het verschil tussen Engine-updates en image-updates begrijpen zo belangrijk. Voor de een moet je downtime plannen, voor de ander niet.
Waarom je Docker zou moeten updaten
Verouderde Docker-versies stellen je bloot aan bekende beveiligingslekken en compatibiliteitsproblemen. Als dat je nog niet overtuigt, lees dan verder.
Beveiliging en stabiliteit
Elke Docker-release dicht beveiligingslekken die in eerdere versies zijn ontdekt.
Een oude versie draaien betekent dat je kwetsbaar bent voor exploits die aanvallers al kennen. Security-onderzoekers en de Docker-community vinden en melden actief deze issues, en het bedrijf achter Docker fixt ze in nieuwere releases. Als je niet updatet, laat je de deur open.
Ook verbetert de stabiliteit met elke release. Bugfixes in nieuwere versies pakken dingen aan die de meeste gebruikers ergeren en die je containers in productie onderuit kunnen halen.
Je hoeft niet bij elke nieuwe versie te updaten, maar maandenlang overslaan betekent dat je tientallen securitypatches en stabiliteitsverbeteringen mist.
Compatibiliteit met moderne systemen
Besturingssystemen en developmenttools gaan vooruit, of jij Docker nu updatet of niet.
Je OS krijgt updates, je CI/CD-tools krijgen nieuwe features en orkestratieplatforms zoals Kubernetes laten uiteindelijk ondersteuning voor oudere Docker-versies vallen. Als je Docker van twee jaar geleden draait, ga je compatibiliteitswaarschuwingen zien, dan errors en uiteindelijk volledige uitval.
Moderne containerimages verwachten ook nieuwere Docker-features. Image-bouwers gebruiken multi-stage builds, BuildKit-optimalisaties en nieuwere storage drivers die oude Docker-versies niet ondersteunen. Je kunt een image pullen die simpelweg niet draait op je verouderde setup.
Als je van plan bent orkestratietools naast Docker te gebruiken, is onze Introduction to Kubernetes een geweldige cursus om je op weg te helpen.
Hoe je je huidige Docker-versie controleert
Voor je gaat updaten is het goed om je huidige versie te checken.
Je geïnstalleerde versie verifiëren
Voer dit commando uit om je huidige Docker-versie te zien:
Het dumpt een hoop informatie over je Docker-installatie, inclusief de serverversie, storage driver, kernelversie en of functies zoals live restore zijn ingeschakeld. Je hebt niet al deze info nodig voor een basisupdate, maar het is handig voor troubleshooting.
Bepalen of een update nodig is
Minor-versie-updates zijn meestal veilig en zou je regelmatig moeten toepassen.
Als je op Docker 29.1.0 zit en 29.1.3 is beschikbaar, is dat een minor-update met bugfixes en securitypatches. Deze updates breken zelden iets en je zou ze toepassen wanneer het uitkomt.
Major-versie-updates vereisen meer voorzichtigheid. Van Docker 24 naar Docker 29 springen kan breaking changes, deprecated features of nieuwe vereisten introduceren. Controleer vóór een major upgrade de Docker-releasenotes voor je doelversie om te zien wat er veranderd is.
Je vindt de nieuwste Docker-versie op de officiële Docker-docs of de GitHub-releasespagina. Vergelijk die met wat docker –version je toont om te zien hoeveel je achterloopt.
Hoe je Docker Engine updatet
Het updateproces hangt af van of je Docker Engine op Linux draait of Docker Desktop op macOS/Windows.
Docker updaten op Linux
Linux gebruikt de pakketbeheerder van je systeem om Docker Engine te updaten.
De exacte commando's verschillen per distributie, maar het proces is hetzelfde:
Werk je pakketlijst bij
Upgrade Docker
Zo werkt het op Ubuntu- en Debian-gebaseerde systemen:
sudo apt update
sudo apt upgrade docker-ce docker-ce-cli containerd.ioMogelijk gemaakt door
Voor op Red Hat gebaseerde systemen zoals CentOS of Fedora voer je het volgende uit:
De Docker-daemon wordt automatisch herstart tijdens de update.
Als je live restore hebt ingeschakeld (check met docker info), blijven je draaiende containers draaien. Zo niet, dan stoppen ze en moet je ze handmatig starten.
Als je Docker met het convenience script in plaats van pakketrepositories hebt geïnstalleerd, moet je het script opnieuw downloaden en uitvoeren om te updaten.
Docker Desktop updaten op macOS en Windows
Docker Desktop gaat anders met updates om dan Docker Engine op Linux.
Auto-update staat standaard aan. Docker Desktop controleert bij het starten op updates en toont een melding wanneer een nieuwe versie beschikbaar is. Klik op de melding en Docker Desktop downloadt en installeert de update voor je.
Als je liever handmatig updatet, open dan de instellingen van Docker Desktop en zoek naar de optie "Check for updates". Je kunt automatische updates hier uitschakelen en handmatig checken wanneer je wilt.
Handmatig updaten is ook prima.
Download gewoon de nieuwste Docker Desktop-installer van de Docker-website en voer deze uit. De installer detecteert je bestaande installatie en voert een upgrade uit zonder je images of containers te verwijderen.
Vergeet niet dat Docker Desktop alle containers stopt tijdens de update. De hele Docker-VM wordt herstart, dus plan een paar minuten downtime in. Je containers starten niet automatisch opnieuw tenzij je ze met herstartbeleid zoals --restart always hebt geconfigureerd.
Na het updaten open je Docker Desktop en laat je het volledig opstarten voordat je docker –version draait om de nieuwe versie te bevestigen.
Meerdere containers individueel beheren is niets om trots op te zijn. Bekijk onze Docker Compose-gids om te leren over multi-container builds.
Hoe je de Docker-update verifieert
Docker zou nu geüpdatet moeten zijn - maar laten we verifiëren of dat echt zo is.
De output zou je doelversie moeten tonen. Als nog steeds de oude versie verschijnt, is de update niet goed voltooid of moet je je terminal herstarten om de nieuwe binaries op te pikken.
De versie is op mijn machine ongewijzigd, maar dat komt alleen omdat ik al op de nieuwste versie zat.
De volgende stap is de status van de Docker-daemon controleren:
Dit pullt de nieuwste versie van de PostgreSQL-image met de tag latest. Maar dat betekent niet altijd wat je denkt - het is gewoon een tag die image-onderhouders naar elke gewenste versie kunnen laten wijzen.
Het is altijd aan te raden om expliciet met tags te zijn om verrassingen te voorkomen:
Dit pullt specifiek PostgreSQL versie 18. Als versie 18.1 uitkomt, zal dit commando opnieuw draaien de geüpdatete 18.1-image pullen terwijl je binnen de 18-serie blijft.
Controleer voor andere images eerst hun huidige versies met het commando docker images. Pull daarna nieuwere versies indien nodig. Je bestaande containers blijven de oude image draaien totdat je ze met de nieuwe opnieuw aanmaakt.
Aangepaste images opnieuw bouwen
Als je je eigen images bouwt met Dockerfiles, moet je ze opnieuw bouwen nadat je base image-updates hebt gepulld.
Stel dat je Dockerfile begint met FROM python:3.14. Zelfs als je de nieuwste python:3.14-image pullt, gebruikt je aangepaste image nog steeds de oude gecachte lagen. Bouw opnieuw om de updates op te pikken:
Dit negeert alle gecachte lagen en bouwt alles vanaf nul opnieuw. Het duurt langer, maar garandeert dat je de meest verse base images en dependencies gebruikt.
Stop na het opnieuw bouwen je oude containers en start nieuwe met de geüpdatete image - updates worden niet automatisch toegepast op draaiende containers.
Schijfruimte vrijmaken na het updaten? Onze Docker Prune-tutorial laat zien hoe je ongebruikte images en containers veilig opruimt.
Veelvoorkomende Docker-updateproblemen
Docker-updates falen op voorspelbare manieren, en de meeste problemen hebben snelle fixes. Ik laat je er een paar zien die ik zelf ben tegengekomen.
Machtigingen, services en installatie-fouten
"Permission denied"-fouten betekenen dat je user geen toegang heeft tot de Docker-socket.
Vervang de tag door de versie die je nodig hebt. Je containers en images blijven intact tijdens de downgrade.
Voor macOS en Windows is terugdraaien eenvoudiger. Download de oudere installer uit het release-archief van Docker en voer die uit. De installer vervangt de huidige versie door de oudere zonder je containers of images aan te raken.
Best practices voor Docker-updates
Het beste advies is om Docker regelmatig up-to-date te houden. Als je dat al jaren niet hebt gedaan, zoek dan in de releasepagina's naar eventuele breaking changes.
Docker veilig up-to-date houden
Stel een herinnering in om Docker-updates te checken in plaats van te wachten op problemen.
Check maandelijks op updates - niet omdat je elke update moet installeren, maar omdat je wilt weten wat er beschikbaar is. En je hebt iets nodig dat je eraan herinnert. Securitypatches zijn belangrijker dan feature-updates, dus geef die voorrang wanneer ze uitkomen.
Een goede gewoonte is om je huidige setup te documenteren vóór je updatet. Schrijf je Docker-versie op, lijst je draaiende containers met docker ps en noteer eventuele aangepaste configuraties. Als er iets breekt, weet je precies wat er veranderd is.
Test updates eerst op een developmentmachine als je Docker in productie draait. Zet een vergelijkbare omgeving op, update Docker daar en zorg dat je containers nog werken voordat je aan productie komt.
Wanneer je updates automatiseert
Automatisering is logisch voor ontwikkelomgevingen waar downtime niet uitmaakt.
Je kunt Docker Desktop configureren om automatisch te updaten of unattended upgrades instellen op Linux voor securitypatches. Dit werkt goed voor lokale ontwikkelmachines waar een herstart geen kritieke services verstoort.
Automatiseer updates niet in productie zonder de juiste waarborgen.
Je hebt monitoring, rollback-strategieën en testing nodig voordat je updates toepast op systemen die echte workloads draaien. Docker-updates kunnen dingen breken - je wilt een mens in de lus voor productiesystemen.
Handmatige updates via maandelijkse reminders is mijn favoriete manier en ik heb er nooit problemen mee gehad.
Conclusie
Docker updaten begint met begrijpen wat je eigenlijk updatet.
Docker Engine-updates, Docker Desktop-updates en image-updates zijn drie verschillende dingen met verschillende impact op je systeem. Weet welke je nodig hebt, volg het juiste proces voor jouw platform en test achteraf. That’s it.
Zet een herinnering in je telefoon. Check maandelijks op updates, geef securitypatches prioriteit en documenteer wat je draait voordat je iets verandert. Updates zouden geen stress moeten opleveren - het zijn routineklussen voor onderhoud.
Voor productieomgevingen geldt: je containers zijn afhankelijk van een correct werkende Docker. Behandel updates met dezelfde zorg als elke andere wijziging in kritieke infrastructuur - doelbewust, met tests en met een rollbackplan als het misgaat.
Nu weet je hoe je Docker updatet - de volgende stap is je container-skills verder uitbouwen met onze cursus Intermediate Docker. Je leert alles over networking, geavanceerde containerimages en Docker Compose.
Senior Data Scientist, gevestigd in Kroatië. Top Tech-schrijver met meer dan 700 gepubliceerde artikelen en meer dan 10 miljoen weergaven. Auteur van het boek Machine Learning Automation with TPOT.
FAQs
Hoe kan ik Docker-containerupdates automatiseren met Watchtower?⌄
Watchtower is een container die je draaiende containers monitort en ze automatisch bijwerkt wanneer er nieuwe imageversies beschikbaar zijn. Je draait Watchtower zelf als container met toegang tot de Docker-socket, en het checkt periodiek op image-updates, pullt nieuwe versies en herstart je containers met de geüpdatete images. Dit werkt goed voor ontwikkelomgevingen, maar wees voorzichtig in productie - geautomatiseerde updates kunnen dingen breken zonder de juiste tests en rollbackstrategieën.
Wat zijn best practices voor het opzetten van een private Docker registry?⌄
Beveilig je private registry met TLS-certificaten en authenticatie om ongeautoriseerde toegang te voorkomen. Gebruik storage backends zoals S3 of Azure Blob Storage voor schaalbaarheid en betrouwbaarheid in plaats van lokale schijfopslag. Implementeer image-scanning op kwetsbaarheden en stel garbage collection in om ongebruikte lagen te verwijderen en ruimte te besparen. Configureer ook toegangsbeheer zodat teams alleen naar repositories kunnen pushen en eruit kunnen pullen waarvoor ze zijn geautoriseerd.
Hoe verschilt een canary deployment van een blue-green deployment?⌄
Blue-green deployment draait twee identieke productieomgevingen - je deployt de nieuwe versie naar de inactieve omgeving, test die en schakelt vervolgens in één keer al het verkeer om. Canary deployment rolt de nieuwe versie geleidelijk uit naar een kleine subset gebruikers eerst, monitort op issues en verhoogt dan langzaam het verkeer naar de nieuwe versie terwijl de oude versie nog de meeste requests afhandelt. Canary-deployments vangen problemen op met minder impact voor gebruikers, terwijl blue-green-deployments directe rollback bieden door terug te schakelen.
Wat zijn de voordelen van multi-stage builds in Docker?⌄
Multi-stage builds laten je meerdere FROM-statements in één Dockerfile gebruiken, wat betekent dat je je applicatie in één stage kunt compileren of bouwen met alle buildtools, en vervolgens alleen de eindartefacten kopieert naar een minimale runtime-image. Dit reduceert de imagegrootte drastisch omdat je geen builddependencies, compilers of broncode in productie meestuurt. Je krijgt ook snellere builds door betere layer caching en een schonere scheiding tussen build- en runtime-omgevingen.
Hoe kan ik performancemetrics van Docker-containers effectief monitoren?⌄
Gebruik docker stats voor snelle realtime-metrics over CPU, geheugen, netwerk en disk I/O voor alle draaiende containers. Voor productiemonitoring verzamelen tools zoals Prometheus met cAdvisor gedetailleerde containermetrics en slaan die op voor analyse en alerting. Docker stelt ook metrics beschikbaar via de API die je kunt scrapen met monitoringplatforms. Stel alerts in voor hoog resourcegebruik, containerrestarts en mislukte health checks om problemen te vangen voordat ze gebruikers raken.
Docker updaten kan drie totaal verschillende dingen betekenen. Misschien moet je Docker Engine, Docker Desktop of de images waarop je containers draaien updaten.
De meeste developers weten niet wat ze precies moeten updaten, dus updaten ze óf alles (met het risico hun setup te breken) óf ze vermijden updates volledig (en stellen zich bloot aan kwetsbaarheden). Om Docker veilig te updaten, hoef je alleen te weten wat je updatet en de juiste stappen per scenario te volgen.
In dit artikel neem ik je mee langs de veiligste, meest gebruikelijke updatepaden zonder giswerk. Je leert wat elk type Docker-update precies doet, wanneer je welke nodig hebt en hoe je stap voor stap updates uitvoert zonder je bestaande containers te breken.
Ben je nieuw met Docker, begin dan met Introduction to Docker om een basis op te bouwen voordat je aan updates en onderhoud werkt.
Wat betekent "Docker updaten" nu eigenlijk?
Zoals gezegd kan de term "Docker updaten" naar drie verschillende dingen verwijzen, en ze door elkaar halen is hoe je per ongeluk een werkend systeem kunt breken. Je kunt de Docker Engine (de kernsoftware die containers draait), Docker Desktop (de GUI-app) of de containerimages die je applicaties gebruiken updaten.
Elk type update beïnvloedt je systeem op een andere manier. Laat me het uitleggen.
Docker Engine updaten vs. images updaten
Docker Engine is de runtime die je containers beheert.
Wanneer je Docker Engine updatet, upgrade je de software die containers aanmaakt, draait en beheert op je systeem. Dit is een wijziging op systeemniveau die beïnvloedt hoe Docker werkt. Je installeert nieuwe binaries, werkt de daemon bij en verandert mogelijk hoe Docker met je besturingssysteem omgaat.
Containerimages zijn de blauwdrukken waar je containers van draaien.
Een image updaten betekent een nieuwere versie van de applicatie binnen die container ophalen. Als je bijvoorbeeld PostgreSQL 14 in een container draait en wilt upgraden naar PostgreSQL 18, betekent de image updaten dat je die nieuwe versie ophaalt. De Docker Engine zelf verandert niet - alleen de software binnen je containers.
Het belangrijkste om te onthouden is dat het updaten van Docker Engine al je containers kan beïnvloeden, terwijl het updaten van een image alleen containers raakt die van die specifieke image zijn gebouwd.
Wat er gebeurt met draaiende containers
Docker Engine-updates herstarten je containers niet automatisch.
Als je Docker Engine op Linux updatet, wordt de Docker-daemon herstart, maar je containers blijven draaien in de meeste moderne setups. Docker gebruikt een functie genaamd live restore die containers in leven houdt tijdens daemon-updates. Je kunt controleren of het is ingeschakeld met
docker infoen zoeken naar "Live Restore Enabled: true."Docker Desktop is een ander verhaal.
Op macOS en Windows stopt Docker Desktop alle draaiende containers tijdens het updaten. De volledige Docker-VM wordt herstart tijdens het updateproces. Je containers starten niet automatisch na de update. Je moet ze handmatig starten of herstartbeleid gebruiken.
Image-updates vereisen dat je containers opnieuw aanmaakt.
Een nieuwe imageversie pullen raakt draaiende containers helemaal niet. Als je de geüpdatete image wilt gebruiken, moet je de oude container stoppen, verwijderen en een nieuwe aanmaken op basis van de geüpdatete image.
Daarom is het verschil tussen Engine-updates en image-updates begrijpen zo belangrijk. Voor de een moet je downtime plannen, voor de ander niet.
Waarom je Docker zou moeten updaten
Verouderde Docker-versies stellen je bloot aan bekende beveiligingslekken en compatibiliteitsproblemen. Als dat je nog niet overtuigt, lees dan verder.
Beveiliging en stabiliteit
Elke Docker-release dicht beveiligingslekken die in eerdere versies zijn ontdekt.
Een oude versie draaien betekent dat je kwetsbaar bent voor exploits die aanvallers al kennen. Security-onderzoekers en de Docker-community vinden en melden actief deze issues, en het bedrijf achter Docker fixt ze in nieuwere releases. Als je niet updatet, laat je de deur open.
Ook verbetert de stabiliteit met elke release. Bugfixes in nieuwere versies pakken dingen aan die de meeste gebruikers ergeren en die je containers in productie onderuit kunnen halen.
Je hoeft niet bij elke nieuwe versie te updaten, maar maandenlang overslaan betekent dat je tientallen securitypatches en stabiliteitsverbeteringen mist.
Compatibiliteit met moderne systemen
Besturingssystemen en developmenttools gaan vooruit, of jij Docker nu updatet of niet.
Je OS krijgt updates, je CI/CD-tools krijgen nieuwe features en orkestratieplatforms zoals Kubernetes laten uiteindelijk ondersteuning voor oudere Docker-versies vallen. Als je Docker van twee jaar geleden draait, ga je compatibiliteitswaarschuwingen zien, dan errors en uiteindelijk volledige uitval.
Moderne containerimages verwachten ook nieuwere Docker-features. Image-bouwers gebruiken multi-stage builds, BuildKit-optimalisaties en nieuwere storage drivers die oude Docker-versies niet ondersteunen. Je kunt een image pullen die simpelweg niet draait op je verouderde setup.
Als je van plan bent orkestratietools naast Docker te gebruiken, is onze Introduction to Kubernetes een geweldige cursus om je op weg te helpen.
Hoe je je huidige Docker-versie controleert
Voor je gaat updaten is het goed om je huidige versie te checken.
Je geïnstalleerde versie verifiëren
Voer dit commando uit om je huidige Docker-versie te zien:
Dit toont je de Docker Engine-versie die op je systeem is geïnstalleerd:
Het versienummer volgt semantische versiebeheer:
major.minor.patch. In dit voorbeeld is 29 de major-versie, 1 de minor-versie en 3 de patch-versie.Voor meer details over je Docker-setup draai je dit commando:
Het dumpt een hoop informatie over je Docker-installatie, inclusief de serverversie, storage driver, kernelversie en of functies zoals live restore zijn ingeschakeld. Je hebt niet al deze info nodig voor een basisupdate, maar het is handig voor troubleshooting.
Bepalen of een update nodig is
Minor-versie-updates zijn meestal veilig en zou je regelmatig moeten toepassen.
Als je op Docker 29.1.0 zit en 29.1.3 is beschikbaar, is dat een minor-update met bugfixes en securitypatches. Deze updates breken zelden iets en je zou ze toepassen wanneer het uitkomt.
Major-versie-updates vereisen meer voorzichtigheid. Van Docker 24 naar Docker 29 springen kan breaking changes, deprecated features of nieuwe vereisten introduceren. Controleer vóór een major upgrade de Docker-releasenotes voor je doelversie om te zien wat er veranderd is.
Je vindt de nieuwste Docker-versie op de officiële Docker-docs of de GitHub-releasespagina. Vergelijk die met wat
docker –versionje toont om te zien hoeveel je achterloopt.Hoe je Docker Engine updatet
Het updateproces hangt af van of je Docker Engine op Linux draait of Docker Desktop op macOS/Windows.
Docker updaten op Linux
Linux gebruikt de pakketbeheerder van je systeem om Docker Engine te updaten.
De exacte commando's verschillen per distributie, maar het proces is hetzelfde:
Zo werkt het op Ubuntu- en Debian-gebaseerde systemen:
Voor op Red Hat gebaseerde systemen zoals CentOS of Fedora voer je het volgende uit:
De Docker-daemon wordt automatisch herstart tijdens de update.
Als je live restore hebt ingeschakeld (check met
docker info), blijven je draaiende containers draaien. Zo niet, dan stoppen ze en moet je ze handmatig starten.Na de update kun je de nieuwe versie verifiëren:
Als je Docker met het convenience script in plaats van pakketrepositories hebt geïnstalleerd, moet je het script opnieuw downloaden en uitvoeren om te updaten.
Docker Desktop updaten op macOS en Windows
Docker Desktop gaat anders met updates om dan Docker Engine op Linux.
Auto-update staat standaard aan. Docker Desktop controleert bij het starten op updates en toont een melding wanneer een nieuwe versie beschikbaar is. Klik op de melding en Docker Desktop downloadt en installeert de update voor je.
Als je liever handmatig updatet, open dan de instellingen van Docker Desktop en zoek naar de optie "Check for updates". Je kunt automatische updates hier uitschakelen en handmatig checken wanneer je wilt.
Handmatig updaten is ook prima.
Download gewoon de nieuwste Docker Desktop-installer van de Docker-website en voer deze uit. De installer detecteert je bestaande installatie en voert een upgrade uit zonder je images of containers te verwijderen.
Vergeet niet dat Docker Desktop alle containers stopt tijdens de update. De hele Docker-VM wordt herstart, dus plan een paar minuten downtime in. Je containers starten niet automatisch opnieuw tenzij je ze met herstartbeleid zoals
--restart alwayshebt geconfigureerd.Na het updaten open je Docker Desktop en laat je het volledig opstarten voordat je
docker –versiondraait om de nieuwe versie te bevestigen.Meerdere containers individueel beheren is niets om trots op te zijn. Bekijk onze Docker Compose-gids om te leren over multi-container builds.
Hoe je de Docker-update verifieert
Docker zou nu geüpdatet moeten zijn - maar laten we verifiëren of dat echt zo is.
De geïnstalleerde versie bevestigen
Check eerst het versienummer:
De output zou je doelversie moeten tonen. Als nog steeds de oude versie verschijnt, is de update niet goed voltooid of moet je je terminal herstarten om de nieuwe binaries op te pikken.
De versie is op mijn machine ongewijzigd, maar dat komt alleen omdat ik al op de nieuwste versie zat.
De volgende stap is de status van de Docker-daemon controleren:
Als het faalt met "Cannot connect to the Docker daemon," draait de daemon niet. Op Linux herstart je hem met het volgende commando:
Op macOS en Windows open je simpelweg Docker Desktop en wacht je tot het is gestart.
Leer de essentiële commando's voor dagelijks containerwerk in ons recente artikel met Top 18 Docker Commands.
Een testcontainer draaien
Om te verifiëren dat niets stuk is na de update, probeer een simpele container te pullen en te draaien:
Dit commando pullt de kleine
hello-world-image en draait die. Je ziet een bericht dat uitlegt dat Docker correct werkt:Hoe je Docker-images updatet na een Engine-update
Docker Engine updaten werkt je containerimages niet bij - die moet je apart behandelen.
Nieuwere imageversies pullen
Je kunt het commando
docker pulldraaien om de nieuwste versie van een image op te halen:Dit pullt de nieuwste versie van de PostgreSQL-image met de tag
latest. Maar dat betekent niet altijd wat je denkt - het is gewoon een tag die image-onderhouders naar elke gewenste versie kunnen laten wijzen.Het is altijd aan te raden om expliciet met tags te zijn om verrassingen te voorkomen:
Dit pullt specifiek PostgreSQL versie 18. Als versie 18.1 uitkomt, zal dit commando opnieuw draaien de geüpdatete 18.1-image pullen terwijl je binnen de 18-serie blijft.
Controleer voor andere images eerst hun huidige versies met het commando
docker images. Pull daarna nieuwere versies indien nodig. Je bestaande containers blijven de oude image draaien totdat je ze met de nieuwe opnieuw aanmaakt.Aangepaste images opnieuw bouwen
Als je je eigen images bouwt met Dockerfiles, moet je ze opnieuw bouwen nadat je base image-updates hebt gepulld.
Stel dat je Dockerfile begint met
FROM python:3.14. Zelfs als je de nieuwstepython:3.14-image pullt, gebruikt je aangepaste image nog steeds de oude gecachte lagen. Bouw opnieuw om de updates op te pikken:Dit negeert alle gecachte lagen en bouwt alles vanaf nul opnieuw. Het duurt langer, maar garandeert dat je de meest verse base images en dependencies gebruikt.
Stop na het opnieuw bouwen je oude containers en start nieuwe met de geüpdatete image - updates worden niet automatisch toegepast op draaiende containers.
Schijfruimte vrijmaken na het updaten? Onze Docker Prune-tutorial laat zien hoe je ongebruikte images en containers veilig opruimt.
Veelvoorkomende Docker-updateproblemen
Docker-updates falen op voorspelbare manieren, en de meeste problemen hebben snelle fixes. Ik laat je er een paar zien die ik zelf ben tegengekomen.
Machtigingen, services en installatie-fouten
"Permission denied"-fouten betekenen dat je user geen toegang heeft tot de Docker-socket.
Voeg op Linux je user toe aan de docker-groep:
Log uit en weer in om de wijziging door te voeren. Je zou daarna geen
sudomeer nodig hebben voor docker-commando's."Cannot connect to the Docker daemon"-fouten betekenen dat Docker niet draait.
Check de servicestatus:
Als die gestopt of gefaald is, start hem dan:
Als hij niet start, bekijk dan de logs met
journalctl -u dockerom te zien wat er misgaat.Op macOS en Windows start je simpelweg de Docker Desktop-app.
Pakketconflicten tijdens installatie ontstaan wanneer oude Docker-pakketten nieuwe in de weg zitten.
Je kunt dit commando draaien om oude Docker-pakketten te verwijderen vóór je de geüpdatete versie installeert:
Installeer daarna Docker opnieuw volgens de officiële installatie-instructies voor jouw distributie.
Docker terugdraaien of downgraden
Als de update je setup breekt, kun je teruggaan naar een eerdere versie.
Zoek op Linux beschikbare versies in je pakketbeheerder:
Installeer een specifieke oudere versie:
Vervang de tag door de versie die je nodig hebt. Je containers en images blijven intact tijdens de downgrade.
Voor macOS en Windows is terugdraaien eenvoudiger. Download de oudere installer uit het release-archief van Docker en voer die uit. De installer vervangt de huidige versie door de oudere zonder je containers of images aan te raken.
Best practices voor Docker-updates
Het beste advies is om Docker regelmatig up-to-date te houden. Als je dat al jaren niet hebt gedaan, zoek dan in de releasepagina's naar eventuele breaking changes.
Docker veilig up-to-date houden
Stel een herinnering in om Docker-updates te checken in plaats van te wachten op problemen.
Check maandelijks op updates - niet omdat je elke update moet installeren, maar omdat je wilt weten wat er beschikbaar is. En je hebt iets nodig dat je eraan herinnert. Securitypatches zijn belangrijker dan feature-updates, dus geef die voorrang wanneer ze uitkomen.
Een goede gewoonte is om je huidige setup te documenteren vóór je updatet. Schrijf je Docker-versie op, lijst je draaiende containers met
docker psen noteer eventuele aangepaste configuraties. Als er iets breekt, weet je precies wat er veranderd is.Test updates eerst op een developmentmachine als je Docker in productie draait. Zet een vergelijkbare omgeving op, update Docker daar en zorg dat je containers nog werken voordat je aan productie komt.
Wanneer je updates automatiseert
Automatisering is logisch voor ontwikkelomgevingen waar downtime niet uitmaakt.
Je kunt Docker Desktop configureren om automatisch te updaten of unattended upgrades instellen op Linux voor securitypatches. Dit werkt goed voor lokale ontwikkelmachines waar een herstart geen kritieke services verstoort.
Automatiseer updates niet in productie zonder de juiste waarborgen.
Je hebt monitoring, rollback-strategieën en testing nodig voordat je updates toepast op systemen die echte workloads draaien. Docker-updates kunnen dingen breken - je wilt een mens in de lus voor productiesystemen.
Handmatige updates via maandelijkse reminders is mijn favoriete manier en ik heb er nooit problemen mee gehad.
Conclusie
Docker updaten begint met begrijpen wat je eigenlijk updatet.
Docker Engine-updates, Docker Desktop-updates en image-updates zijn drie verschillende dingen met verschillende impact op je systeem. Weet welke je nodig hebt, volg het juiste proces voor jouw platform en test achteraf. That’s it.
Zet een herinnering in je telefoon. Check maandelijks op updates, geef securitypatches prioriteit en documenteer wat je draait voordat je iets verandert. Updates zouden geen stress moeten opleveren - het zijn routineklussen voor onderhoud.
Voor productieomgevingen geldt: je containers zijn afhankelijk van een correct werkende Docker. Behandel updates met dezelfde zorg als elke andere wijziging in kritieke infrastructuur - doelbewust, met tests en met een rollbackplan als het misgaat.
Nu weet je hoe je Docker updatet - de volgende stap is je container-skills verder uitbouwen met onze cursus Intermediate Docker. Je leert alles over networking, geavanceerde containerimages en Docker Compose.