Docker Compose to narzędzie umożliwiające definiowanie i uruchamianie aplikacji Docker składających się z wielu kontenerów. Dzięki Docker Compose możesz używać pliku YAML do konfigurowania usług, sieci i wolumenów aplikacji, co pozwala uruchamiać wiele połączonych ze sobą kontenerów zarządzanych jako jedna jednostka.
Docker Compose został wprowadzony w 2014 roku jako sposób na uproszczenie zarządzania aplikacjami Docker z wieloma kontenerami. Od tego czasu stał się popularnym narzędziem w ekosystemie Docker, oferując prosty i efektywny sposób na orkiestrację kontenerów.
Jak działa Docker Compose
Docker Compose działa poprzez odczytanie pliku YAML opisującego usługi, sieci i wolumeny aplikacji. Każda usługa jest definiowana jako kontener, a plik YAML określa, jak kontenery mają być skonfigurowane i jak mają się ze sobą komunikować.
Po uruchomieniu Docker Compose tworzy sieć dla aplikacji i startuje kontenery określone w pliku YAML. Kontenery są uruchamiane w kolejności podanej w pliku, a każdy z nich otrzymuje własny zestaw zmiennych środowiskowych, plików konfiguracyjnych oraz innych zasobów.
Gdy kontenery działają, Docker Compose udostępnia zestaw poleceń do zarządzania aplikacją, takich jak uruchamianie i zatrzymywanie kontenerów, skalowanie usług oraz przeglądanie logów.
Używanie Docker Compose
Aby skorzystać z Docker Compose, najpierw musisz stworzyć plik YAML opisujący Twoją aplikację. Oto przykład prostego pliku Docker Compose w formacie YAML:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
W tym przykładzie mamy dwie usługi: „web” i „db”. Usługa „web” używa obrazu nginx i udostępnia port 8000 na hoście. Usługa „db” korzysta z obrazu postgres i ustawia zmienną środowiskową POSTGRES_PASSWORD.
Aby uruchomić aplikację, wykonaj następujące polecenie:
docker-compose up
To polecenie odczyta plik YAML i uruchomi kontenery zdefiniowane w tym pliku. Następnie możesz uzyskać dostęp do usługi web, otwierając przeglądarkę i przechodząc pod adres http://localhost:8000.
Podsumowanie
Docker Compose to potężne narzędzie do zarządzania aplikacjami Docker składającymi się z wielu kontenerów. Dzięki Docker Compose możesz definiować aplikację jako zestaw połączonych ze sobą kontenerów, co ułatwia jej zarządzanie i skalowanie. Korzystając z prostego pliku YAML do konfiguracji, Docker Compose umożliwia szybkie tworzenie, uruchamianie i administrowanie złożonymi aplikacjami opartymi na kontenerach.