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

Jak nainstalovat a používat Docker Compose na CentOS

Docker Compose je jednoduchý program Python, který pomáhá při snadném nasazení více kontejnerů dockeru na serveru.

Pro popis služby používá jednoduchý soubor YAML.

Místo dlouhého běhu docker run . . . řádků, stačí použít docker-compose up -d k nasazení více služeb najednou.

V tomto tutoriálu vám ukážu, jak nainstalovat Docker Compose na server CentOS. Ukážu vám také rychlý příklad použití Docker Compose pro nasazení serveru NGINX se specifickou konfigurací.

Instalace docker-compose na CentOS

Předtím musíte nainstalovat Docker. Před instalací Docker Compose se ujistěte, že máte na svém systému CentOS nainstalován Docker.

docker-compose není zabalen v oficiálních úložištích CentOS ani v úložišti rpm docker.

Existují dva způsoby, jak nainstalovat Docker Compose na Linux:

  • Stáhněte si soubory instalačního programu Docker Compose Linux a ručně jej nastavte
  • Použijte PIP ke snadné instalaci Docker Compose

Osobně dávám přednost použití PIP k instalaci Docker Compose. Vzhledem k tomu, že Docker Compose je v zásadě aplikace Python, má smysl pro její instalaci používat PIP.

Podívejme se, jak na to.

Instalovat pip3

Nainstalujte pip3 pomocí následujícího příkazu:

sudo dnf install python3-pip

Instalovat docker-compose pomocí pip3

Použijte pip k instalaci docker-compose

pip3 install --user docker-compose

Aktualizovat PATH

pip nainstaluje docker-compose do ~/.local/bin adresář. Budete ji muset přidat do proměnné prostředí PATH, abyste ji mohli spustit odkudkoli:

echo 'PATH="$PATH:$HOME/.local/bin"' >> ~/.bashrc

Pokud používáte zsh , změňte .bashrc na .zshrc .

Až budete hotovi, použijte zdrojový příkaz source ~/.bashrc nebo znovu otevřete terminál (odhlaste se a znovu se přihlaste, pokud se jedná o server).

Pomocí následujícího příkazu potvrďte, že je docker-compose nainstalován:

[email protected]:~$ docker-compose --version
docker-compose version 1.26.2, build unknown

Gratulujeme! Nyní máte na svém serveru CentOS 8 nainstalován docker-compose.

Chcete to vyzkoušet? Postupujte podle tohoto jednoduchého návodu a naučte se používat Docker Compose.

Nasazení ukázkového serveru nginx pomocí docker-compose

Nginx je jedním z nejpopulárnějších webových serverů, lze jej snadno nasadit pomocí dockeru.

Porovnejme způsob psaní a způsob neskládání

Nasazení Nginx bez Docker Compose

Můžete použít run příkaz pro snadné nasazení serveru nginx, jako je tento:

docker run --name server --network net -v html:/usr/share/nginx/html -v $PWD/custom-config.conf:/etc/nginx/nginx.conf -p 80:80 --restart on-failure -d nginx:latest

Zde jste nasadili server nginx s názvem kontejneru „server“, pomocí externí sítě „net“, připojili jste svazek s názvem „html“, pomocí vlastního konfiguračního souboru a naslouchali na portu 80 na hostiteli, který automaticky restartovat při selhání.

Pojďme si projít problémy zde:

Sítě a svazky budete muset vytvořit předem

Docker automaticky nevytvoří síť a svazek. Budete je muset vytvořit předem.

Příliš mnoho možností na psaní pokaždé

Možností psaní je příliš mnoho. Pokud se jedná o složitější kontejner, jako je databázový kontejner nebo kontejner reverzního proxy nebo kontejner nextcloud, tyto možnosti se jen rozrostou.

Prostředí vývoje

Co když testujete své sestavení a nechcete po zastavení kontejneru zachovat objem? Poté budete muset svazek a síť ručně odebrat.

Nasazení Nginx pomocí Docker Compose

Nejprve budete muset vytvořit soubor pro psaní.

Vytvořte adresář s názvem "nginx-compose" a do něj cd:

mkdir nginx-compose && cd nginx-compose

Vytvořte soubor s názvem „docker-compose.yml“ a přidejte následující řádky

version: "3.3"

services:
    server:
        image : "nginx:latest"
        container_name: "server"
        volumes:
            - "html:/usr/share/nginx/html"
            - "./custom-config.conf:/etc/nginx/nginx.conf"
        networks:
            - "net"
        ports:
            - "80:80"
        restart: "on-failure"

volumes:
    html:
networks:
    net:

Tento soubor pro psaní popisuje službu s názvem server , to nasadí server nginx s přesně stejnými konfiguracemi, jaké jsme udělali my bez komponování. Nasaďte jej pomocí:

docker-compose up -d

docker-compose vyhledá v aktuálním adresáři soubor s názvem „docker-compose.yml“, analyzuje jej a nasadí služby v něm definované.

Pojďme si nyní projít problémy metody non-compose s metodou compose:

  1. Není třeba vytvářet sítě a svazky předem, docker-compose to udělá za vás. Externí svazky můžete přidat nastavením external na true v každém svazku/síti.
  2. Jakmile napíšete soubor .yaml, již není potřeba zapisovat rozsáhlé příkazy. Tento soubor můžete zkopírovat na jakýkoli jiný server, který má nainstalovanou nejnovější verzi docker-compose, a poběží snadno podle očekávání.
  3. Můžete použít docker-compose down -v příkaz k zastavení a odstranění nejen kontejnerů, ale také všech sítí a svazků, které docker-compose vytvořil. To pomáhá při čištění ve vývojovém/testovacím prostředí.

Použití docker-compose oproti docker run má mnoho dalších výhod , zejména ve výrobě, která je mimo rozsah dnešního článku.

Pokud chcete něco takového vidět, dejte mi vědět v sekci komentářů níže. Sledujte naši sérii dokovacích stanic, kde najdete další podobné průvodce.


Docker
  1. Jak nainstalovat a používat TensorFlow na CentOS 7

  2. Jak nainstalovat Docker Compose na CentOS 7

  3. Jak nainstalovat a používat Docker Compose na Ubuntu 18.04

  1. Jak nainstalovat a používat Docker na CentOS 7

  2. Jak nainstalovat a používat Docker Compose na CentOS 7

  3. Jak nainstalovat a používat Curl na CentOS 8

  1. Jak nainstalovat a používat Docker Compose na Debianu 9

  2. Jak nainstalovat a používat Docker Compose na Debian 10 Linux

  3. Jak nainstalovat a používat Docker-Compose na CentOS 7