Meer informatie over Docker Images
Stappen in de Systematische Probleem Aanpak
1. Doel
Het bouwen en beheren van Docker images voor applicaties, zodat ze reproduceerbaar en platformonafhankelijk zijn.
2. Subdoelen
Splits het proces in subdoelen:
- Het bouwen van een image vanuit een Dockerfile
- Toevoegen image tags en versiebeheer
- Inspecteren van de image
- Optimalisatie van images
- Beheer en distributie via registries
Tip
Gebruik
.dockerignore
om onnodige bestanden uit te sluiten - dit versnelt het build-proces en verkleint de image size.
Casus
Maak een Docker image:
Doel Docker Commando/Instructie Resultaat in Image Image bouwen docker build -t mijn-app .
Nieuwe image op basis van Dockerfile Image versiebeheer docker tag mijn-app:v1
Image krijgt een versie tag Image inspecteren docker inspect mijn-app
Metadata en details van de image Image verkleinen --no-cache
en multi-stage buildKleinere en efficiëntere image Image opslaan/exporteren docker save
ofdocker push
Image wordt gedeeld of gearchiveerd
3. Fasen
- Image Bouwen
Actie: Gebruikdocker build
om een image te genereren op basis van de Dockerfile. Ga hiervoor eerst in de terminal van Docker Desktop. Navigeer dan (gebruik bijvoorbeeld CD) naar de folder waar ook de Dockerfile zich bevindt. Nadocker build
kan het argument-t
gebruikt worden om een naam te geven aan de image. Zoals:mijn-image
. Door daarachter een.
neer te zetten wordt er in je huidige folder naar een Dockerfile gezocht. Het commando ziet er uiteindelijk zo uit:docker build -t mijn-image .
Resultaat: Een nieuwe Docker image, klaar voor gebruik. Deze image is dan, als het is gelukt, te vinden in Docker Desktop in het image tabblad.
Figuur 1: Een gevuld image tabblad in Docker Desktop
-
Image Versiebeheer
Actie: Gebruik tags om versies toe te voegen. Dit helpt bij het beheren en distribueren van updates. Dit kan achteraf:docker tag mijn-image mijn-image:v1
of tijdens het builden van de image:docker build -t mijn-image:latest .
Resultaat: Image krijgt duidelijke versie-identificatie. -
Image Inspecteren
Actie: Bekijk metadata van een image metdocker inspect
gevolgd door de image naam. Bijvoorbeeld:docker inspect mijn-app
. Resultaat: Gedetailleerde informatie over de image-configuratie. -
Image Opslaan en Delen
Actie: Deel en archiveer images via Docker registries of lokale opslag. Als je bijvoorbeeld DockerHub gebruikt heb je hier eerst een account voor nodig. Zo kan je de image uploaden naar Docker Hub:docker push mijn-image:v1
. Deze image is daarna op te halen metdocker pull mijn-image:v1
. Je kan de image ook lokaal opslaan als bestand metdocker save -o mijn-app.tar mijn-app
. Dit bestand is daarna in te laden metdocker load -i mijn-app.tar
. Resultaat: Image is toegankelijk voor andere ontwikkelaars en systemen.
Correctieve feedback tijdens de uitvoer
- Build errors:
- “Cannot connect to Docker daemon” ➔ Controleer of Docker draait (open Docker Desktop en kijk rechts onderin).
- ”No space left on device” ➔ Verwijder ongebruikte images met
docker system prune
. Let hierbij wel op dat dit alle images kan verwijderen.
Tip
Versiebeheer van images: Gebruik
docker history [image]
om te zien hoe oudere versies eruit zagen.
Volgende stap: Uitleg Docker Containers