Docker Compose je nástroj, který umožňuje uživatelům definovat a spouštět více kontejnerové Docker aplikace. S Docker Compose můžete použít soubor YAML k nastavení služeb, sítí a svazků aplikace, což vám umožní spustit několik propojených kontejnerů spravovaných jako jedna jednotka.
Docker Compose byl představen v roce 2014 jako způsob, jak zjednodušit správu více kontejnerových Docker aplikací. Od té doby se stal populárním nástrojem v ekosystému Docker, poskytujícím jednoduchý a efektivní způsob orchestraci kontejnerů.
Jak Docker Compose funguje
Docker Compose funguje tak, že načte soubor YAML popisující služby, sítě a svazky aplikace. Každá služba je definována jako kontejner a soubor YAML určuje, jak mají být kontejnery nakonfigurovány a jak mají mezi sebou komunikovat.
Když spustíte Docker Compose, vytvoří pro aplikaci síť a spustí kontejnery definované v souboru YAML. Kontejnery jsou spouštěny v pořadí, ve kterém jsou uvedeny v souboru, a každý kontejner získá vlastní sadu proměnných prostředí, konfiguračních souborů a dalších zdrojů.
Po spuštění kontejnerů Docker Compose poskytuje sadu příkazů pro správu aplikace, například spouštění a zastavování kontejnerů, škálování služeb nebo prohlížení logů.
Používání Docker Compose
Pro použití Docker Compose nejprve vytvořte soubor YAML, který popisuje vaši aplikaci. Níže je ukázka jednoduchého souboru Docker Compose:
version: '3'
services:
web:
image: nginx
ports:
- "8000:80"
db:
image: postgres
environment:
POSTGRES_PASSWORD: example
V tomto příkladu máme dvě služby: web a db. Služba web používá obraz nginx a vystavuje port 8000 na hostiteli. Služba db používá obraz postgres a nastavuje proměnnou prostředí POSTGRES_PASSWORD.
Pro spuštění aplikace použijte následující příkaz:
docker-compose up
Tento příkaz načte soubor YAML a spustí v něm definované kontejnery. Poté můžete přistupovat k webové službě otevřením webového prohlížeče a zadáním adresy http://localhost:8000.
Závěr
Docker Compose je výkonný nástroj pro správu více kontejnerových Docker aplikací. S Docker Compose můžete definovat aplikaci jako sadu propojených kontejnerů, což usnadňuje její správu a škálování. Používáním jednoduchého souboru YAML k nastavení aplikace Docker Compose umožňuje snadno vytvářet, spouštět a spravovat komplexní kontejnerové aplikace.