Sobes.tech
Middle

Kuo skiriasi Docker Compose nuo Docker Swarm?

sobes.tech AI

Atsakymas iš AI

Docker Compose valdo kelių konteinerių kaip vieno paslaugos vienetą vienoje mašinoje. Jis naudojamas kūrimui, testavimui ir vietiniam diegimui. Konfigūracijos failai aprašomi YAML formatu.

Docker Swarm yra įmontuotas Docker klasterio orkestratorius. Leidžia paleisti ir valdyti paskirstytą klasterį iš kelių Docker mašinų. Naudojamas gamybos diegimui, užtikrina mastelį, atsparumą ir apkrovos balansavimą.

Pagrindiniai skirtumai:

Savybė Docker Compose Docker Swarm
Mastelis Vienos mašinos Daugiašalinis (klasteris)
Paskirtis Kūrimas, testavimas, vietinis Gamyba, paskirstytos sistemos
Orkestracija Ne (valdo kelis servisus) Taip (įmontuotas orkestratorius)
Atsparumas klaidoms Ne Taip (savęs atstatymas paslaugų)
Apkrovos balansavimas Ne Taip (įmontuotas)
Paslaugų konfigūracija docker-compose.yml docker stack deploy su YAML failu

Pavyzdys docker-compose.yml dviem paslaugoms (web ir db):

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

Pavyzdys klasterio diegimo Swarm:

# Paslaugų diegimas, aprašytų YAML faile
docker stack deploy -c my-swarm-stack.yaml myapp