Sobes.tech
Junior

Čo je Docker Compose?

sobes.tech AI

Odpoveď od AI

Nástroj na definovanie a spustenie multi-kontejnerových Docker aplikácií. Umožňuje popísať služby, siete a volume v jednom YAML súbore a spustiť ich jedným príkazom.

Hlavné funkcie:

  • Definovanie viacerých služieb v jednom súbore.
  • Vytvorenie a spustenie všetkých služieb jedným príkazom.
  • Riadenie životného cyklu aplikácie (štart, zastavenie, reštart, škálovanie).
  • Sieťová komunikácia medzi kontajnermi.
  • Aplikácia konfigurácie naživo.

Príklad súboru docker-compose.yml:

version: '3.8' # Verzia formátu súboru

services:
  web: # Názov služby
    image: nginx:latest # Použitý obraz
    ports:
      - "80:80" # Presmerovanie portov
    volumes:
      - ./html:/usr/share/nginx/html # Mapovanie volume

  app: # Názov inej služby
    build: . # Sestavenie obrazu z Dockerfile v aktuálnom adresári
    ports:
      - "5000:5000"
    depends_on: # Závislosť od inej služby
      - db

  db: # Názov služby databázy
    image: postgres:latest
    environment: # Premenné prostredia
      POSTGRES_DB: mydatabase
      POSTGRES_USER: myuser
      POSTGRES_PASSWORD: mypassword

volumes: # Definované volume
  data: # Názov volume pre dáta

Príkazy:

  • docker-compose up: Spustí kontajnery.
  • docker-compose down: Zastaví a odstráni kontajnery.
  • docker-compose build: Postaví obrazy.
  • docker-compose ps: Zobrazí stav bežiacich kontajnerov.

Výhody:

  • Zjednodušuje správu zložitých multi-kontejnerových aplikácií.
  • Zabezpečuje opakovateľnosť nasadenia.
  • Uľahčuje lokálny vývoj a testovanie.