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: ցույց է տալիս ընթացիկ կոնտեյներների վիճակը:

Առավելություններ՝

  • բարդ բազմակոնտեյներային հավելվածների կառավարումը պարզեցնելու համար:
  • ապահովում է տեղադրման կրկնօրինականությունը:
  • հեշտացնում է տեղական զարգացման և փորձարկումների գործընթացը: