Sobes.tech
Junior

Docker Compose nima?

sobes.tech AI

AIdan javob

Ko‘p konteynerli Docker ilovalarini aniqlash va ishga tushirish uchun vosita. Xizmatlar, tarmoqlar va hajmlarni bitta YAML faylida tasvirlash va ularni bitta buyruq bilan ishga tushirish imkonini beradi.

Asosiy funksiyalar:

  • Bir faylda bir nechta xizmatlarni belgilash.
  • Barcha xizmatlarni bitta buyruq bilan yaratish va ishga tushirish.
  • Ilovaning hayot aylanishini boshqarish (ishga tushirish, to‘xtatish, qayta ishga tushirish, kengaytirish).
  • Konteynerlar o‘rtasida tarmoq aloqasi.
  • Konfiguratsiyani real vaqtda qo‘llash.

docker-compose.yml fayli uchun misol:

version: '3.8' # Fayl format versiyasi

services:
  web: # Xizmat nomi
    image: nginx:latest # Ishlatilayotgan tasvir
    ports:
      - "80:80" # Portlarni yo‘naltirish
    volumes:
      - ./html:/usr/share/nginx/html # Hajmni xaritalash

  app: # Boshqa xizmat nomi
    build: . # Dockerfile dan tasvirni qurish
    ports:
      - "5000:5000"
    depends_on: # Boshqa xizmatga bog‘liqlik
      - db

  db: # Ma’lumotlar bazasi xizmatining nomi
    image: postgres:latest
    environment: # Muhit o‘zgaruvchilari
      POSTGRES_DB: mydatabase
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword

volumes: # Belgilangan hajmlar
  data: # Ma’lumotlar uchun nomlangan hajm

Buyruqlar:

  • docker-compose up: Konteynerlarni ishga tushiradi.
  • docker-compose down: To‘xtatadi va olib tashlaydi.
  • docker-compose build: Tasvirlarni quradi.
  • docker-compose ps: Ishlayotgan konteynerlarning holatini ko‘rsatadi.

Afzalliklari:

  • Murakkab ko‘p konteynerli ilovalarni boshqarishni soddalashtiradi.
  • Joylashtirishning takrorlanadiganligini ta’minlaydi.
  • Mahalliy rivojlantirish va test qilishni osonlashtiradi.