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

Jak nainstalovat Docker a Docker Compose na Linux

Docker vám poskytuje vše, co potřebujete k sestavení a spuštění kontejnerů na vašem systému Linux. Kontejnery jsou podobné lehkým virtuálním strojům. Umožňují vám vytvářet obrazy přenosných aplikací, které běží pomocí jádra operačního systému vašeho hostitele.

Docker můžete používat na platformách Debian, Fedora, CentOS a Raspbian. Deriváty těchto distribucí budou také fungovat. Docker poskytuje sestavení x86/x64 a ARM pro většinu podporovaných platforem. Používáme systém Debian s apt správce balíčků pro tuto příručku. Pokyny specifické pro jiné distribuce lze nalézt v dokumentaci Docker.

Docker Compose vám umožňuje vytvářet a provozovat stohy více kontejnerů. Vytvoříte soubor YAML, který nakonfiguruje kontejnery vaší aplikace. Poté můžete pomocí jediného příkazu spustit všechny kontejnery a propojit je dohromady. Compose vám pomůže rozdělit komponenty vašeho zásobníku do jednotlivých kontejnerových služeb.

Compose je distribuován nezávisle na Dockeru. Před přidáním Compose nainstalujte Docker – jinak nebude Compose fungovat.

SOUVISEJÍCÍ: Jak používat Docker ke kontejnerizaci PHP a Apache

Instalovat Docker

K instalaci nejnovější verze Dockeru můžete použít správce balíčků operačního systému. Budete muset přidat úložiště Dockeru, aktualizovat seznamy balíčků a poté nainstalovat Docker.

Debian/Ubuntu

Začněte přidáním závislostí potřebných pro proces instalace:

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates curl gnupg lsb-release

Dále přidejte klíč GPG úložiště Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Přidejte úložiště do svých zdrojů a aktualizujte seznamy balíčků:

echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Nyní můžete nainstalovat Docker:

sudo apt-get install docker-ce docker-ce-cli containerd.io

Fedora

Přidejte úložiště balíčků Docker:

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

Nainstalujte Docker:

sudo dnf install docker-ce docker-ce-cli containerd.io

CentOS

Přidejte úložiště balíčků Docker:

sudo yum -y install yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/fedora/docker-ce.repo

Nainstalujte Docker:

sudo yum install docker-ce docker-ce-cli containerd.io

Používání Dockeru bez sudo

Démon Docker běží jako root . Příkazům Dockeru musíte obvykle předponu sudo . To může být únavné, pokud Docker často používáte. Přidáváte se do docker skupina vám umožní používat Docker bez sudo .

sudo usermod -aG docker $USER

Jakmile jste ve skupině, odhlaste se a znovu se přihlaste. Případně spusťte newgrp docker příkaz k okamžitému přihlášení do aktualizované skupiny. Nyní byste měli být schopni vypustit sudo z příkazů Docker.

Testování instalace dockeru

Nyní je Docker nainstalován, je čas otestovat, že funguje! Můžete použít minimální hello-world obrázek.

docker run hello-world:latest

Ve vašem terminálu by se mělo objevit několik řádků výstupu. Docker nejprve vyhledá hello-world:latest obrázek na vašem počítači. Protože nebude existovat, bude obrázek stažen z úložiště Docker Hub.

Jakmile bude obrázek vytažen, bude z něj vytvořen nový kontejner. Kontejner je nakonfigurován tak, aby vydal základní zprávu „ahoj světe“ a poté odešel. Pokud vidíte text, vaše instalace Dockeru funguje!

Správa služby Docker

Zda Docker běží, můžete zkontrolovat kontrolou jeho služby pomocí systemctl . Je třeba zvážit dvě součásti, docker a containerd . docker je démon Docker Engine, kterému CLI posílá příkazy. containerd je základní běhové prostředí, které skutečně spouští vaše kontejnery.

sudo systemctl status docker.service
sudo systemctl status containerd.service

Démony můžete spravovat jako jakékoli jiné služby ve vašem systému. Použijte systemctl stop pokud chcete dočasně zastavit Docker a uvolnit systémové prostředky používané vašimi kontejnery:

sudo systemctl stop docker.service

Službu můžete restartovat pomocí systemctl start .

Přidání Docker-Compose

docker-compose je samostatný binární soubor, který je nejlepší stáhnout přímo z vydání GitHubu projektu. Většina populárních linuxových distribucí zahrnuje Compose ve svých správcích balíčků, ale může být značně zastaralý.

Přejděte na stránku vydání Docker Compose a poznamenejte si číslo nejnovější verze. V době psaní článku to bylo 1.29.0 .

Nahraďte verzi, kterou vidíte, namísto 1.29.0 v příkazu níže. Tím se stáhne správný binární soubor pro váš systém a uloží se do /usr/local/bin .

sudo curl -L "https://github.com/docker/compose/releases/download/1.29.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

Dále udělejte soubor jako spustitelný:

sudo chmod +x /usr/local/bin/docker-compose

Nyní budete moci používat docker-compose příkaz ve vašem terminálu. Zkuste spustit docker-compose --version zkontrolovat.

Vytvoření jednoduchého souboru Docker-Compose

Chcete-li použít docker-compose musíte vytvořit docker-compose.yml soubor. Popisuje kontejnery, které tvoří zásobník vaší aplikace. Můžete určit vazby portů, proměnné prostředí, sítě a svazky, které používají vaše kontejnery.

Kontejnery deklarované ve stejném docker-compose.yml soubor se automaticky stane součástí stejného zásobníku. Jsou spolu propojeny do sítě Docker, takže spolu mohou komunikovat pomocí svého docker-compose.yml názvy služeb jako názvy hostitelů.

Zde je jednoduchý docker-compose.yml ke spuštění webového serveru PHP a databáze MySQL:

version: "3"

services:
  app:
    image: php8.0-apache
    environment:
      - MYSQL_SERVER=mysql
      - MYSQL_USERNAME=root
      - MYSQL_PASSWORD=example
    ports:
      - ${PORT:-80}:80
    restart: unless-stopped
  mysql:
    image: mysql:8.0
    expose:
      - 3306
    environment:
      - MYSQL_ROOT_PASSWORD
    volumes:
      - mysql:/var/lib/mysql
    restart: unless-stopped

volumes:
  mysql:

Obě služby můžete spustit spuštěním docker-compose up -d . Uvidíte, jak se oba obrázky stahují z Docker Hub. Poté budou kontejnery spuštěny. Obojí můžete zastavit pomocí docker-compose stop . Použijte docker-compose down k odstranění nádob.

Vzorový soubor YAML ukazuje několik funkcí Docker Compose. Kontejnery jsou definovány v části services uzel, přičemž každý kontejner deklaruje svůj image Docker . Proměnné prostředí shellu můžete předávat do kontejnerů (environments ) a nastavte vazby portů Docker (ports ). Proměnné prostředí lze interpolovat do řetězců pomocí ${VARIABLE:-DEFAULT} syntax. Pokud proměnná není ve vašem prostředí nastavena, DEFAULT místo toho se použije jako hodnota. Více o Docker Compose se můžete dozvědět v naší specializované příručce.

Přehled

Docker můžete snadno nainstalovat pomocí správců balíčků oblíbených distribucí Linuxu. Přidejte úložiště Docker a poté nainstalujte docker-ce , docker-ce-cli a containerd.io . Tyto komponenty vám poskytnou vše, co potřebujete k sestavení a provozu vašich kontejnerů.

Jakmile budete připraveni, můžete napsat Dockerfile a použijte docker build -t my-app:latest . postavit to. Poté použijte docker run my-app:latest ke spuštění kontejneru.

Docker-Compose je další abstraktní vrstva, která usnadňuje provozování „hromady“ více kontejnerů. S Compose nemusíte ručně spouštět více příkazů v sérii. Můžete napsat deklarativní soubor YAML a použít docker-compose up spusťte všechny své kontejnery současně.

SOUVISEJÍCÍ: Co je Docker Compose a jak jej používáte?


Docker
  1. Jak nainstalovat Docker na systém Fedora Linux

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

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

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

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

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

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

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

  3. Jak nainstalovat a používat Docker na Arch Linux