Wat zijn Docker Containers?
Een Docker Container is een lichtgewicht, zelfstandige en uitvoerbare eenheid die alles bevat wat nodig is om een applicatie te draaien. Je zou dus bijvoorbeeld een website met een container kunnen hosten. Een container bevat code, runtime, afhankelijkheden en systeemtools. Dit zorgt voor een geïsoleerde omgeving, waardoor applicaties consistent werken, ongeacht waar ze worden uitgevoerd.
Casus
Een bedrijf ontwikkelt een webapplicatie op Windows laptops, maar moet uiteindelijk in de cloud worden gedeployed. Daarnaast wil de klant het lokaal draaien op zijn MacBook. Met Docker Containers kan de applicatie in alle omgevingen op exact dezelfde manier functioneren, zonder compatibiliteitsproblemen.
Hoe zitten Docker Containers in elkaar?
Docker Containers worden gebouwd op basis van deelbare Docker Images. Wanneer een container wordt gestart, wordt een instantie van een image gegenereerd. Containers draaien op de Docker Engine, die zorgt voor resourcebeheer en isolatie.
Een container kan eenvoudig worden gestart, gestopt en opnieuw gebruikt zonder dat de originele image wordt aangepast. Dit maakt het beheer van applicaties efficiënt en betrouwbaar. Data die opgeslagen is in de container wordt wel verwijderd wanneer de conainter verwijderd wordt. Dit gebeurt dus ook als je een database op een container draait. Om dit te voorkomen kunnen Volumes gebruikt worden.
Hoe gebruik je Docker Containers?
Docker Containers worden gebruikt om applicaties in een gecontroleerde omgeving te draaien. Ze zijn ideaal voor ontwikkeling, testen en productie en bieden voordelen zoals snelle deployment, schaalbaarheid en versiebeheer.
Containers kunnen handmatig worden beheerd met de Docker CLI of met Docker Desktop. Containers kunnen ook geautomatiseerd worden met tools zoals Docker Compose en Kubernetes.
Casus
Een DevOps-team moet een API-service deployen die afhankelijk is van een database. De API moet eenvoudig kunnen worden geschaald en zonder downtime worden bijgewerkt. Oplossing met Docker: De API en database worden elk in een aparte container geplaatst. Dankzij containers kan de API consistent draaien zonder configuratie en afhankelijkheidsproblemen.
Bronnen
Docker CLI: https://docs.docker.com/reference/cli/docker/
Volgende stap: Stappen Docker Containers