Sobes.tech
Middle

Фарқи байни Docker Compose ва Docker Swarm чист?

sobes.tech AI

Ҷавоб аз AI

Docker Compose чанд контейнери идора мекунад ҳамчун як хизматрасонӣ дар як мошин. Ин барои таҳия, санҷиш ва ҷойгиркунии маҳаллӣ истифода мешавад. Файлҳои конфигуратсия дар формат YAML тавсиф мешаванд.

Docker Swarm як оркестратори дарунсохти кластерии Docker мебошад. Он имкон медиҳад, ки кластер тақсимшудаи аз чанд мошин бо Docker оғоз ва идора карда шавад. Барои ҷойгиркунии истеҳсолӣ истифода мешавад, ки масштабсозӣ, тобоварӣ ба хато ва баробарсозии борро таъмин мекунад.

Фарқиятҳои асосӣ:

Хусусият Docker Compose Docker Swarm
Масштабсозӣ Дар як мошин Дар чанд мошин (кластер)
Мақсад Таҳия, санҷиш, маҳаллӣ Истеҳсолӣ, системаҳои тақсимшуда
Оркестратсия Не (мухтасар чанд хизматрасониро идора мекунад) Бале (оркестратори дарунсохт)
Тобоварӣ ба хато Не Бале (хизматҳоро худкор барқарор мекунад)
Баробарсозии бор Не Бале (дарунсохт)
Конфигуратсияи хизматрасонӣ docker-compose.yml docker stack deploy бо файл YAML

Масалан docker-compose.yml барои ду хизматрасонӣ (web ва db):

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

Масалан, ҷойгиркунии стеки дар Swarm:

# Ҷойгиркунии хизматрасониҳо, ки дар файли YAML тавсиф шудаанд
docker stack deploy -c my-swarm-stack.yaml myapp