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:

DoelDocker Commando/InstructieResultaat in Image
Image bouwendocker build -t mijn-app .Nieuwe image op basis van Dockerfile
Image versiebeheerdocker tag mijn-app:v1Image krijgt een versie tag
Image inspecterendocker inspect mijn-appMetadata en details van de image
Image verkleinen--no-cache en multi-stage buildKleinere en efficiëntere image
Image opslaan/exporterendocker save of docker pushImage wordt gedeeld of gearchiveerd

3. Fasen

  1. Image Bouwen
    Actie: Gebruik docker 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. Na docker 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

  1. 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.

  2. Image Inspecteren
    Actie: Bekijk metadata van een image met docker inspect gevolgd door de image naam. Bijvoorbeeld: docker inspect mijn-app. Resultaat: Gedetailleerde informatie over de image-configuratie.

  3. 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 met docker pull mijn-image:v1. Je kan de image ook lokaal opslaan als bestand met docker save -o mijn-app.tar mijn-app. Dit bestand is daarna in te laden met docker 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