GNU/Linux >> Znalost Linux >  >> Panels >> Docker

Začínáme s Docker Compose v Linuxu

Docker Compose je nástroj pro definování a spouštění vícekontejnerových dockerových aplikací v Linuxu. S Compose používáme ke konfiguraci služeb naší aplikace soubor YAML. A poté vytvoříme a spustíme všechny služby z konfigurace jediným příkazem. Zde je jednoduchá grafická ilustrace, která ukazuje, jak Docker compose funguje.

Jak Docker compose funguje – grafická ilustrace

Docker Compose je v podstatě třístupňový proces:

  1. Nejprve musíme definovat prostředí aplikace pomocí Dockerfile takže jej lze znovu použít.
  2. Zadruhé definujeme služby, které tvoří aplikaci v docker-compose.yml takže je lze provozovat společně v izolovaném prostředí.
  3. Nakonec spustíme docker-compose up a Compose spustí a spustí celou vaši aplikaci.

Začínáme s Docker Compose v Linuxu

Docker Compose lze nainstalovat dvěma způsoby. Pokyny k instalaci naleznete v části Install Docker Compose v následujících odkazech.

  • Jak nainstalovat Docker v Ubuntu
  • Jak nainstalovat Docker v CentOS

Po instalaci zkontrolujte verzi Docker compose pomocí příkazů:

# docker-compose -version

Nebo,

# docker-compose -v

Nebo,

# docker-compose --version

Zkontrolujte verzi pro psaní dockeru

Chcete-li získat pomoc, jednoduše spusťte:

# docker-compose -help

Tento příkaz zobrazí seznam příkazů, které může docker compose provádět.

nápovědu k psaní docker

Nyní si jako příklad vezměme jednoduchý soubor pro vytvoření dockeru. Zde je obsah mého nového souboru.

Ukázkový soubor pro vytvoření ukotvitelného panelu

Nad souborem pro vytváření zpráv dockeru je minimální soubor pro pochopení základního obsahu souboru pro vytváření zpráv.

Platnost souboru můžeme zkontrolovat pomocí příkazu:

# docker-compose config

Zkontrolujte platnost souboru sestavení dockeru

Pokud zadáte nesprávnou verzi v souboru pro psaní dockeru, zobrazí se vám chybová zpráva.

Chybová zpráva při sestavování souboru Docker

Nyní spusťte soubor pro vytvoření souboru pomocí příkazu:

# docker-compose up -d

Spustí všechny služby jediným příkazem.

Spusťte docker compose

Chcete-li zobrazit seznam běžících kontejnerů vytvořených souborem pro vytvoření souboru, spusťte:

# docker-compose ps

Seznam spuštěných kontejnerů docker

Aplikaci můžeme kdykoli zrušit následujícím příkazem:

# docker-compose down

Zastavte dokovací kontejnery

Můžeme také nginx přiřadit jiný port, například 8181.

Chcete-li to provést, definujte port v souboru pro vytváření zpráv, jak je znázorněno na následujícím obrázku.

Definujte kontejner portu nginx

Nyní je nginx vystaven portu 8181. Spusťte kontejner a zkontrolujte, zda Nginx běží na portu 8181.

Spusťte kontejner nginx

Otevřete prohlížeč a ověřte, zda běží na portu 8181.

Otestujte kontejner nginx ve webovém prohlížeči

Pokud chcete službu škálovat, můžete to udělat pomocí příkazu:

# docker-compose up -d --scale database=3

Škálování služeb pomocí docker compose

Chcete-li zobrazit spuštěné služby, spusťte:

# docker-compose top

Zobrazení běžících služeb pomocí docker compose

Chcete-li zastavit, začněte. restartujte celou službu najednou, příkazy by byly:

# docker-compose stop
# docker-compose start
# docker-compose restart

Logy služeb můžeme zobrazit pomocí příkazu:

# docker-compose logs

Zobrazit protokoly služeb

Vytváření sítí v docker-compose

Docker Compose ve výchozím nastavení nastaví pro vaši aplikaci jednu síť. Každý kontejner se připojí k výchozí síti a kontejnery budou moci komunikovat v této výchozí síti.

Pokud však nechcete výchozí síť, můžete vytvořit novou síť pomocí příkazu Compose.

Pro účely této příručky používám následující tři soubory:

  1. Dockerfile
  2. docker-compose.yml
  3. server.py

Zde je obsah Dockerfile:

obsah dockerfile

Obsah souboru docker-compose.yml:

Docker složí obsah souboru

Obsah souboru server.py:

obsah souboru aplikace

Nyní vytvořte obrázek pomocí příkazu:

# docker-compose build

Po dokončení sestavení uvidíte následující výstup:

Vytvořit obrázek dockeru

Jak můžete vidět, obraz je úspěšně vytvořen. Můžete to ověřit pomocí příkazu:

# docker images

Vypsat obrázky ukotvitelného panelu

Jak vidíte na výše uvedeném výstupu, obraz Dockeru s názvem image1 je vytvořen.

Nyní spusťte nový soubor:

# docker-compose up -d

Spusťte soubor docker compose file

Zkontrolujte, zda je nová síť vytvořena nebo ne, pomocí příkazu:

# docker network ls

Zkontrolujte síť docker

Z výše uvedeného snímku obrazovky můžeme potvrdit novou síť s názvem dc_network_my-network byl vytvořen.

Zkontrolujeme, zda kontejner běží nebo ne, pomocí příkazu "docker ps":

# docker ps

výstup příkazu docker ps

Ano, kontejner běží!

Nakonec spusťte soubor kódu aplikace (server.py) pomocí příkazu curl:

# curl localhost:15001

Nebo,

# curl 10.26.35.244:15001

výstup aplikace

Získáváme výstup – Ahoj světe z uzlu 1! který je zapsán v souboru server.py. To znamená, že to funguje!

Doporučené čtení:

  • Vysvětlení pojmů Docker Networking
  • Vysvětlení svazků Docker s příklady
  • Jak automaticky aktualizovat spuštěné kontejnery Docker
  • ctop – nástroj pro monitorování příkazového řádku pro linuxové kontejnery
  • Portainer – nejsnazší způsob správy Dockeru
  • PiCluster – jednoduchá webová aplikace pro správu dockerů
  • Dockly – Správa kontejnerů Docker z terminálu

O autorovi:

Dhruv Tiwari je DevOps Engineer, který miluje automatizaci věcí, práci s Linuxem ve velkém a sní o dni, kdy budou systémy dostatečně chytré, aby se nikdy nemusely přihlašovat k linuxovému boxu. Cesta CI/CD od zdrojového kódu přes nasazení kódu až po produkci.


Docker
  1. Začínáme s linuxovými firewally

  2. Začínáme s příkazem tac systému Linux

  3. Začínáme s PostgreSQL na Linuxu

  1. Začínáme s btrfs pro Linux

  2. Začínáme s PiFlash:Spuštění Raspberry Pi v systému Linux

  3. Začínáme s SSH v Linuxu

  1. Rady pro začátek s GNOME

  2. Začínáme s pracovním prostředím GNOME Linux

  3. Začínáme s OKD na ploše Linuxu