Sobes.tech
Middle

Docker Compose va Docker Swarm o'rtasidagi farq nima?

sobes.tech AI

AIdan javob

Docker Compose bir nechta konteynerlarni bir mashinada yagona xizmat sifatida boshqaradi. Bu rivojlantirish, test qilish va mahalliy joylashtirish uchun ishlatiladi. Konfiguratsiya fayllari YAML formatida tavsiflanadi.

Docker Swarm — bu Docker klasterining o'rnatilgan orkestratoridir. Bu Docker bilan bir nechta mashinalardan iborat tarqatilgan klasterni ishga tushirish va boshqarish imkonini beradi. U ishlab chiqarish uchun joylashtirishda, kengaytirish, nosozliklarga chidamlilik va yukni balanslashni ta'minlaydi.

Asosiy farqlar:

Xususiyat Docker Compose Docker Swarm
Kengaytirish Bir mashinada Bir nechta mashinalarda (klaster)
Maqsad Rivojlantirish, test, mahalliy Ishlab chiqarish, tarqatilgan tizimlar
Orkestratsiya Yo'q (bir nechta xizmatlarni boshqaradi) Ha (o'rnatilgan orkestrator)
Nosozliklarga chidamlilik Yo'q Ha (xizmatlarni o'z-o'zini tiklash)
Yukni balanslash Yo'q Ha (o'rnatilgan)
Xizmatlarni sozlash docker-compose.yml docker stack deploy YAML fayli bilan

Ikki xizmat uchun misol (web va db) docker-compose.yml:

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

Swarmda yuki tashish uchun misol:

# YAML faylida tavsiflangan xizmatlarni joylashtirish
docker stack deploy -c my-swarm-stack.yaml myapp