Docker-compose je nástroj příkazového řádku pro definování a konfiguraci multikontejnerové dockerové aplikace s. Jinými slovy můžeme říci, že docker compose se používá k propojení více kontejnerů a nasazení aplikace z jediného příkazu. Předpokládejme, že chceme nasadit web WordPress uvnitř kontejneru, takže k jeho nasazení bych vyžadoval jeden kontejner webového serveru (Apache/nginx) a jeden databázový kontejner (mysql / mariadb).
S Docker Compose můžeme snadno zahrnout více kontejnerů do našeho souboru docker-compose a můžeme také definovat veškerou další konfiguraci potřebnou pro mou aplikaci. Nástroj Docker-compose lze použít ve vývojovém, testovacím a stagingovém prostředí, kromě toho jej lze snadno použít v CI (Pokračuje v integraci ) pracovní postup
V tomto článku probereme, jak nainstalovat Docker Compose na stávajícího hostitele Dockeru, a poté se naučíme, jak nasadit kontejnery z příkazu docker-compose. V našem předchozím článku jsme již diskutovali o následujících tématech.
- Jak nainstalovat Docker na CentOS 7
- Nainstalujte a nakonfigurujte režim Docker Swarm na CentOS 7
Zde předpokládám, že máme existujícího hostitele dockeru v provozu. Nyní přejdeme k instalačním krokům nástroje pro psaní dockeru.
Kroky instalace Docker Compose
Přihlaste se k hostiteli dockeru a spouštějte níže uvedené příkazy jeden po druhém
[[e-mail protected] ~]# yum install epel-release -y[[email protected] ~]# yum install python-pip -y[[email protected] ~]# pip install docker-compose
Poznámka:Pip verze 6.0 nebo vyšší se doporučuje, aby docker-compose fungovalo hladce. V případě, že je verze pip nižší než 6.0, spusťte níže uvedený příkaz a upgradujte jej
[[email protected] ~]# pip instalace --upgrade pip
Ověřte verzi Dockeru pomocí níže uvedeného příkazu
[[email protected] ~]# docker-compose --versiondocker-compose verze 1.15.0, sestavení e12f3b9[[email protected] ~]#
Nasazení kontejnerů pomocí nástroje Docker Compose
Chcete-li nasadit kontejnery dockeru pomocí příkazu docker-compose , nejprve vytvořte adresář v tomto adresáři a vytvořte soubor pro psaní s názvem „docker-compose.yml “ nebo „docker-compose.yaml ‘. V souboru compose definujeme služby pro naše aplikace a obrázky kontejnerů.
Než začnete vytvářet nový soubor, nejprve stáhněte obrázky kontejnerů WordPress a MySQL
[[chráněný emailem] ~] # docker pull wordpress [[[chráněný emailem] ~] # kotvák pull mysql [[[chráněný emailem] ~] # docker image lsrepository tag Image ID vytvořené sizemysql poslední c73c7527c03a 2 dny před 412mbwordpress poslední f28808014819 7 před dny 406 MB
Vytvořte adresář s názvem „wordpress-site ”
[[e-mail chráněný] ~]# mkdir wordpress-site[[e-mail protected] ~]# cd wordpress-site/[[email protected] wordpress-site]#
Vytvořte soubor docker-compose.yml s následujícím obsahem
Verze:'3.0'Services:WebServer:Obrázek:WordPress Container_Name:WP_WEB porty:- 8080:80 Odkazy:- DBServer:MySQL prostředí:wordpress_db_password:6zcpress_db_password:6zcznaejlwp79P
Ve výše uvedeném skládacím souboru jsme definovali dvě služby s názvem „webserver“ a „dbserver“, pro tyto služby jsem také specifikoval obrázek kontejneru . Kromě toho jsem specifikoval prostředí uvedením hesla root mysql a hesla wordpress db.
Pojďme nasadit naši aplikaci, tj. web WordPress, spuštěním příkazu níže,
[[email protected] wordpress-site]# docker-compose up
Poznámka: Spusťte příkaz ‚docker-compose up‘ z adresáře, kde existuje soubor docker-compose.
Nad příkazem nasadí dva kontejnery s názvem „wp_web“ a „wp_db“. Zkuste přistupovat na svůj web WordPress pomocí adresy URL :
http://{docker-host-ip}:8080
Dokončete instalaci WordPressu podle pokynů na obrazovce. To potvrzuje, že jsme úspěšně nasadili web WordPress do kontejnerů pomocí nástroje docker-compose.
Pojďme se podívat na možnosti příkazu „docker-compose“
Seznam kontejnerů, které jsou nasazeny pro naši aplikaci
[[email protected] wordpress-site]# docker-compose ps Jméno Příkaz Stav Porty----------------------------- -----------------------------------------wp_db docker-entrypoint.sh mysqld Nahoru 3306 /tcpwp_web docker-entrypoint.sh apach ... Nahoru 0.0.0.0:8080->80/tcp[[email protected] wordpress-site]#
Zastavte a spusťte Kontejnery a jejich služby
Stiskněte Ctrl+C na příkazu nebo spusťte níže uvedený příkaz
[[e-mail chráněný] wordpress-site]# docker-compose stopZastavení wp_web ... hotovoZastavení wp_db ... hotovo[[email chráněný] wordpress-site]#
Spuštěním ‚docker-compose start‘ spustíte kontejnery a jejich služby
[[email protected] wordpress-site]# docker-compose startSpouštění dbserver ... hotovoSpouštění webového serveru ... hotovo[[email protected] wordpress-site]#
Zobrazit protokoly kontejnerů
Spusťte příkaz ‚docker-compose logs‘ pro zobrazení protokolů kontejnerů a pro zobrazení protokolů konkrétního kontejneru použijte příkaz ‚docker-compose logs {service-name}‘
[[e-mail chráněný] wordpress-site]# protokoly docker-compose[[email protected] wordpress-site]# docker-compose protokoly dbserver
Zastavte a odeberte kontejnery spolu s jejich sítí
Pomocí příkazu ‚docker-compose down‘ můžeme zastavit a odebrat kontejnery z jediného příkazu
[[email protected] wordpress-site]# docker-compose downStopping wp_web ... doneStopping wp_db ... doneRemoving wp_web ... doneRemoving wp_db ... doneRemoving network wordpresssite_default[[email protected] wordpress-site]#To je vše z tohoto tutoriálu. Další možnosti naleznete v části „docker-compose –help“
Jak nainstalovat VirtualBox 5.1 na CentOS 7 / RHEL 7 / Fedora 26 Jak nainstalovat a nakonfigurovat CWP (CentOS Web Panel) na CentOS 7Cent OS