Sobes.tech
Junior

Docker Compose чист?

sobes.tech AI

Ҷавоб аз AI

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

Функсияҳои асосӣ:

  • Тавсифи чанд хидмат дар як файл.
  • Эҷод ва оғоз кардани ҳамаи хидматҳо бо як фармон.
  • Идоракунии давраи ҳаёти барнома (омӯхтан, боздошт, бозоғозӣ, паҳн кардан).
  • Муносибати шабакавӣ байни контейнерҳо.
  • Иҷрои конфигуратсия дар вақти воқеӣ.

Масалан барои файл docker-compose.yml:

version: '3.8' # Нусхаи формати файл

services:
  web: # Номи хидмат
    image: nginx:latest # Расми истифодашуда
    ports:
      - "80:80" # Идоракунии портҳо
    volumes:
      - ./html:/usr/share/nginx/html # Харитаи ҳаҷмҳо

  app: # Номи хидмати дигар
    build: . # Таҳия кардани расм аз Dockerfile дар директорияи ҳозира
    ports:
      - "5000:5000"
    depends_on: # Такя ба хидмати дигар
      - db

  db: # Номи хидмати базаи додаҳо
    image: postgres:latest
    environment: # Тағйирёбандаҳои муҳит
      POSTGRES_DB: mydatabase
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword

volumes: # Ҳаҷмҳои муайяншуда
  data: # Ҳаҷми номгузоришуда барои додаҳо

Командҳо:

  • docker-compose up: Оғоз кардани контейнерҳо.
  • docker-compose down: Боздоштан ва тоза кардани контейнерҳо.
  • docker-compose build: Таҳия кардани расмҳо.
  • docker-compose ps: Намоиши ҳолати контейнерҳои фаъол.

Уфуқҳо:

  • Соддагардонии идоракунии барномаҳои мураккаб бо чанд контейнер.
  • Бехатарии такрорӣ кардани паҳнкунӣ.
  • Осон кардани рушди маҳаллӣ ва озмоишҳо.