Sobes.tech
Middle

Wat is het verschil tussen Docker Compose en Docker Swarm?

sobes.tech AI

Antwoord van AI

Docker Compose beheert meerdere containers als één service op één machine. Het wordt gebruikt voor ontwikkeling, testen en lokale implementaties. De configuratiebestanden worden beschreven in YAML-formaat.

Docker Swarm is een ingebouwde orkestrator voor de Docker-cluster. Het stelt je in staat om een gedistribueerde cluster van meerdere machines met Docker te starten en te beheren. Het wordt gebruikt voor productie-implementaties, biedt schaalbaarheid, fouttolerantie en load balancing.

Belangrijkste verschillen:

Kenmerk Docker Compose Docker Swarm
Schaalbaarheid Op één machine Op meerdere machines (cluster)
Doel Ontwikkeling, testen, lokaal Productie, gedistribueerde systemen
Orkestratie Nee (beheert meerdere services) Ja (ingebouwde orkestrator)
Fouttolerantie Nee Ja (zelfherstel van services)
Load balancing Nee Ja (ingebouwd)
Serviceconfiguratie docker-compose.yml docker stack deploy met YAML-bestand

Voorbeeld docker-compose.yml voor twee services (web en db):

# docker-compose.yml
version: '3.8'
services:
  web:
    image: nginx
    ports:
      - "80:80"
  db:
    image: postgres
    environment:
      POSTGRES_PASSWORD: mysecretpassword

Voorbeeld van stack-implementatie in Swarm:

# Deploy de services beschreven in het YAML-bestand
docker stack deploy -c my-swarm-stack.yaml myapp