Sobes.tech
Junior

Czym jest Docker Compose i jak go używać?

sobes.tech AI

Odpowiedź od AI

Docker Compose to narzędzie do definiowania i uruchamiania wielokontenerowych aplikacji Docker. Pozwala opisać usługi aplikacji, ich zależności i konfigurację w jednym pliku (zwykle docker-compose.yml). Następnie jednym poleceniem można uruchomić wszystkie zdefiniowane usługi.

Użycie Docker Compose:

  1. Definiowanie usług: W pliku docker-compose.yml opisuje się różne komponenty aplikacji jako usługi (np. serwer web, baza danych, API backend). Dla każdej usługi określa się obraz Docker, porty, wolumeny, zmienne środowiskowe i zależności.

    # przykład pliku docker-compose.yml
    version: '3.8'
    services:
      webapp:
        image: my-webapp
        ports:
          - "80:80"
        volumes:
          - .:/app
      database:
        image: postgres:13
        environment:
          POSTGRES_USER: user
          POSTGRES_PASSWORD: password
    
  2. Uruchomienie aplikacji: Polecenie docker-compose up buduje, tworzy i uruchamia wszystkie usługi opisane w pliku docker-compose.yml.

    # uruchom wszystkie usługi w tle
    docker-compose up -d
    
  3. Zatrzymanie aplikacji: Polecenie docker-compose down zatrzymuje i usuwa kontenery, sieci i wolumeny utworzone przez docker-compose up.

    # zatrzymaj i usuń usługi
    docker-compose down
    

Główne zalety:

  • Uproszczenie konfiguracji: Cała konfiguracja wielokontenerowej aplikacji jest skupiona w jednym pliku.
  • Powtarzalność: Łatwo skonfigurować i uruchomić aplikację w identycznym środowisku na różnych maszynach.
  • Zarządzanie cyklem życia: Proste polecenia do uruchamiania, zatrzymywania i ponownego uruchamiania wszystkich usług.
  • Testowanie: Wygodne do uruchamiania środowisk testowych z zależnymi usługami (bazy danych, kolejki wiadomości itp.).

W QA Docker Compose jest często używany do szybkiego wdrażania środowisk testowych, symulowania złożonej infrastruktury i zapewniania przewidywalności środowiska testowego.