Docker-compose je nástroj dockeru, ale než pochopíme, co je to docker-compose, vysvětlíme si, co je to Docker? Docker je virtuální kontejner, který se používá ke kombinování aplikací s jejich závislostmi, aby bylo možné spustit na jakémkoli operačním systému. Docker podporuje nástroj známý jako Docker-compose a používá se ke zpracování vícekontejnerových aplikací.
Docker-compose používá pro konfiguraci soubory YAML a spravuje všechny služby z CLI (rozhraní příkazového řádku), buď ke spuštění služby, nebo k vytvoření procesu, všechny procesy lze snadno ovládat pomocí tohoto nástroje.
V tomto příspěvku se naučíme instalační postup jeho instalace v Debianu 11 a také probereme některé základní příkazy jeho použití.
Jak nainstalovat Docker-Compose na Debian 11
Vzhledem k tomu, že balíček Docker-Compose není součástí úložiště Debianu 11, nainstalujeme jej přímo z Github a použijeme příznak -o jako výstup a výstup uložíme na zadanou cestu, abychom tak učinili, spustíme příkaz:
$ sudo curl -L https://github.com/docker/compose/releases/download/v2.0.1/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose
Jakmile bude Docker-Compose stažen a nainstalován, změníme přístupová oprávnění souboru pomocí chmod:
$ sudo chmod +x /usr/local/bin/docker-compose
Pro potvrzení instalace zkontrolujeme verzi Docker-Compose pomocí příkazu:
$ docker-compose --version
Z výstupu bylo ověřeno, že Docker-Compose byl úspěšně nainstalován.
Jak používat Docker-compose v Debianu 11
Zde probereme některé základní příkazy pro použití Docker-compose v Debianu 11. Nejprve vytvoříme adresář a přepneme se do něj, řekněme, že vytvoříme adresář s názvem Hello-itslinux provedením příkazů:
$ mkdir Hello-itslinux
$ cd Hello-itslinux
Poté zde pomocí nano editoru pomocí příkazu:
vytvoříme soubor YML$ nano docker-compose.yml
Sem zadejte nějaký obsah, řekněme, že budeme inicializovat dvě služby db a WordPress, obě služby vytvoří své vlastní obrázky, když je spustí Docker-Compose. Kód bude takto:
version: '3'
services:
db:
image: mysql:5.7
volumes:
- db_data:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: somewordpress
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: wordpress
wordpress:
depends_on:
- db
image: wordpress:latest
ports:
- "8000:80"
restart: always
environment:
WORDPRESS_DB_HOST: db:3306
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: wordpress
volumes:
db_data:
Stiskněte CTRL+S pro uložení souboru a CTRL+X pro ukončení editoru nyní spusťte soubor pomocí docker-composer jako:
$ sudo docker-compose up -d
Nyní výše uvedený příkaz vytvoří obojí; db a WordPress kontejnery a také je spouštět. Nyní, pokud chceme odstranit a zastavit kontejnery pomocí docker-compose, spusťte příkaz:
$ sudo docker-compose down
Můžeme také vytvořit multikontejnerovou aplikaci pomocí Docker-Compose, pro tento účel se uvažuje o jednoduchém příkladu, opět otevřít soubor pomocí nano editoru a vložit do něj nový kód.
$ nano docker-compose.yml
Nyní upravte kód, ve kterém každá sekce sekce „Služby“ vytvoří samostatnou položku o provedení docker-compose jako:
version: '3'
services:
distro:
image: alpine
restart: always
container_name: Alpine_Distro
entrypoint: tail -f /dev/null
Uložte soubor stisknutím CTRL+S a ukončete editor stisknutím CTRL+X . Po zavření editoru spusťte příkaz k vytvoření kontejnerů.
$ sudo docker-compose up -d
Kontejnery byly sestaveny, pro kontrolu stavu kontejnerů provede příkaz:
$ sudo docker ps
Nyní je k jejich odstranění použijeme příkaz down jako:
$ sudo docker-compose down
Existuje také mnoho dalších pokročilých příkazů, s jejichž pomocí můžeme provádět mnoho dalších úkolů. Pokud chceme odstranit Docker-Compose z Debianu 11, spusťte příkaz:
$ sudo rm /usr/local/bin/docker-compose
Docker-compose byl z Debianu 11 úspěšně odstraněn.
Závěr
Více prostředí lze hostovat z jednoho počítače pomocí Docker-compose, což je nástroj Dockerů. Je velmi bezpečný při sdělování informací mezi kontejnery, protože uchovává informace ve formě roje. V tomto zápisu jsme nejprve diskutovali o způsobu instalace Docker-Compose v Debianu 11 přímo z Githubu a poté diskutujeme o jeho použití vytvořením dvou služeb db a WordPress a také vytvořením jednoduché aplikace pomocí Docker-compose.