GNU/Linux >> Znalost Linux >  >> Debian

Jak nainstalovat Docker na Debian 11

Docker je sada otevřených platforem, která poskytuje virtualizaci na úrovni operačního systému pro vývoj, odesílání a spouštění aplikací. V Dockeru jsou aplikace dodávány jako balíčky standardizovaných jednotek nazývaných kontejnery. Každý kontejner je od sebe izolován, včetně knihoven a konfiguračních souborů, ale každý z nich může komunikovat prostřednictvím dobře definovaných síťových kanálů.

Docker se prozatím stal standardem pro vývoj softwaru a DevOps. Používají ho miliony vývojářů k vytváření, sdílení a spouštění libovolných aplikací každý den v práci. Používá se v životním cyklu vývoje aplikací, od samotného vývoje, testování a výroby. S Dockerem se aplikace stává flexibilnější a přenosnější. Aplikace lze snadno spouštět kdekoli v různých operačních systémech, ale samotná aplikace zůstává stejná, od knihoven po konfigurační soubory.

V tomto tutoriálu se naučíte, jak nainstalovat Docker na Debian 11 Bullseye. Také se naučíte základní použití Dockeru pro spouštění kontejnerů a správu obrázků.

Předpoklady

  • Server Debian 11. Ujistěte se, že jsou všechny balíčky aktualizovány na nejnovější verzi.
  • Uživatel root nebo uživatel s oprávněními root. Tento uživatel bude použit pro instalaci nových balíčků a úpravu systémových konfigurací.

Instalační závislosti

Nejprve nainstalujete některé základní závislosti balíčků na váš systém Debian.

1. Pro instalaci nových závislostí balíčků spusťte níže uvedený příkaz apt.

apt install \
    apt-transport-https \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

Zadejte „y “ a stiskněte „Enter ' pro instalaci všech těchto balíčků.

Přidání úložiště Docker

Pro tuto příručku budete instalovat Docker z oficiálního úložiště Docker. Takže do svého systému Debian přidáte nové úložiště Docker.

1. Provedením následujícího příkazu přidejte klíč GPG pro Docker.

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

2. Poté přidejte úložiště Docker pro systém Debian 11 pomocí příkazu níže.

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

3. Nyní spusťte 'apt update ' pro aktualizaci/obnovení všech dostupných úložišť.

apt update

Nyní jste připraveni nainstalovat Docker na Debian 11 Bullseye.

Instalace Dockeru na Debian 11

1. Pokud má váš systém již dříve nainstalovaný Docker z úložiště Debianu, musíte jej odebrat pomocí příkazu níže.

sudo apt remove docker docker-engine docker.io containerd runc

2. Poté můžete Docker znovu nainstalovat pomocí příkazu apt níže.

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

Zadejte „y “ a stiskněte „Enter ' pro potvrzení instalace.

3. Pokud je instalace dokončena, ověřte instalaci provedením následujícího příkazu.

Zkontrolujte, zda je služba povolena nebo ne.

systemctl is-enabled docker
systemctl is-enabled containerd

Zkontrolujte stav služby Docker a Containerd.

systemctl status docker containerd

Níže je podobný výstup, který získáte.

Jak je vidět, služby Docker a Containerd jsou aktivní (běžící) a obě služby jsou povoleny a spustí se automaticky při startu systému.

Povolit uživatelům bez oprávnění root používat Docker

Ve výchozím nastavení Docker povoluje pouze uživatele 'root ' provozovat kontejnery. A aby uživatel bez oprávnění root mohl spouštět kontejnery, musíte svého uživatele bez oprávnění root přidat do skupiny 'docker ', který se automaticky vytvoří během instalace Dockeru.

1. V tomto příkladu budete používat uživatele 'johndoe ' ke spuštění kontejneru Docker.

Vytvořte nového uživatele 'johndoe' na vašem systému Debian pomocí následujícího příkazu.

useradd -m -s /bin/bash johndoe

2. Poté spusťte následující příkaz pro přidání uživatele 'johndoe ' do skupiny 'ukotvitelný panel '.

usermod -aG docker johndoe

3.  Nyní se přihlaste jako uživatel 'johndoe ' pomocí příkazu níže a ověřte konfiguraci.

su - johndoe

Spusťte následující příkaz docker pro ověření vaší instalace.

docker run hello-world

A uvidíte 'Hello Docker ' zpráva níže.

Níže je jednoduché vysvětlení příkazu docker, který spustíte nahoře.

  • Docker se pokusí najít název obrázku „hello-world“. Pokud je obrázek dostupný lokálně, docker spustí kontejner, pokud obrázek není dostupný lokálně, Docker najde a stáhne obrázek „hello-world“ na Docker-hub (výchozí úložiště obrázků dockeru).
  • Pokud je stažen obraz dockeru, docker spustí kontejner. A kontejner provádí příkazy a zobrazuje vám zprávu 'Hello Docker'.

4. Nyní zkontrolujte kontejner docker pomocí příkazu docker níže.

Kontrola kontejneru se stavem 'běží '.

docker ps

Kontrola všech kontejnerů – zobrazí vám všechny kontejnery, aktuálně běžící a zastavené kontejnery.

docker ps -a

Níže je podobný výstup jako níže.

Jak můžete vidět, nový název kontejneru 'bold_bartix ' je vytvořen se základním obrázkem 'hello-world “ a aktuální stav kontejneru je „Exited “ nebo zastavena. Název kontejneru 'bold_bartix' na snímku obrazovky náhodně vybral Docker, ale můžete zadat název svého kontejneru.

Základní použití Docker

V této fázi se naučíte velmi základní použití Dockeru pro správu obrázků a kontejnerů.

1. Nejprve si stáhněte obrazy Dockeru do místního počítače pomocí následujícího příkazu.

docker pull nginx:alpine

Příkaz stáhne název obrázku Docker 'nginx “ a štítkem „alpine ' do vašeho systému.

Výraz „tagy “ je jako verze samotného obrazu. 'nginx:alpine ' znamená 'nginx ' obrázek se štítkem 'alpine “, což znamená založeno na operačním systému Alpine Linux. Vždy zkontrolujte všechny dostupné značky obrázků Docker v oficiálním úložišti Docker-Hub.

Níže je uveden příklad všech dostupných značek pro obrázek Dockeru 'nginx '.

Chcete-li zkontrolovat všechny dostupné obrazy dockeru v místním systému, spusťte následující příkaz docker.

docker images

Uvidíte podobný výstup jako níže.

Jak je vidět, máte dva obrázky Docker, nginx:alpine a ahoj světe .

2. Dále spusťte následující příkaz pro spuštění kontejneru.

docker run -it --rm -d -p 8080:80 --name web nginx:alpine

Nyní získáte náhodný řetězec a číslo nového kontejneru.

Možnosti, které musíte znát:

  • -i nebo --interactive - ponechá kontejner STDIN otevřený, i když není připojen.
  • -t nebo --tty – přidělí pseudoterminál, který propojí váš terminál s STDIN a STDOUT kontejneru.
  • --rm - automaticky vyjměte nádobu, když nádobu opustíte nebo zastavíte.
  • -d - spuštění kontejneru na pozadí, po spuštění kontejner odpojit.
  • -p 8080:80 - zmapujte port mezi kontejnerem a hostitelským systémem. Port '80 “ na kontejneru je namapován na hostitelský systém port '8080 '.
  • --name web – zadejte název nového kontejneru jako „web '.
  • nginx:alpine - obrázek Dockeru, který používáme, je 'nginx:alpine '.

Nyní zkontrolujte běžící kontejner pomocí příkazu níže.

docker ps

Uvidíte podobný výsledek jako níže.

Chcete-li ověřit svůj kontejner Nginx, otevřete webový prohlížeč a zadejte IP adresu svého serveru s portem '8080 '.

http://192.168.1.10:8080/

A uvidíte indexovou stránku Nginx z kontejneru 'web ' jak je uvedeno níže.

3. Dále můžete zkontrolovat protokol kontejneru provedením následujícího příkazu docker.

docker logs web

A uvidíte všechny protokoly vašeho kontejneru, od začátku do konce.

Chcete-li omezit výstup protokolu, můžete použít '--tail n ' níže.

docker logs --tail 10 web

A uvidíte posledních 10 řádků protokolů kontejneru.

4. Nyní můžete kontejner Docker zastavit pomocí příkazu Docker níže.

docker stop web

Poté ověřte spuštěný kontejner pomocí následujícího příkazu.

docker ps
docker ps -a

Uvidíte následující výstup, jak je uvedeno níže.

'Web ' kontejner se zastaví a automaticky se odstraní. Je to proto, že používáte možnost '--rm ' při spuštění kontejneru.

5. Dále se naučíte spouštět kontejner s vlastním svazkem. Adresář na hostitelském počítači bude použit jako svazek pro kontejner Docker.

Vytvořte nová 'data ' adresář a vlastní 'index.html ' pomocí následujícího příkazu.

mkdir -p ~/data/
nano ~/data/index.html

Zkopírujte a vložte vlastní 'index.html ' skript, jak je uvedeno níže.

<!doctype html>
<html lang="en">
<head>
  <meta charset="utf-8">
  <title>Welcome to Docker Nginx</title>
</head>
<body>
  <h2>Hello from Nginx container</h2>
</body>
</html>

Uložte konfiguraci stisknutím 'Ctrl+x ', zadejte 'y “ a poté stiskněte „Enter '.

Dále vytvořte nový kontejner pomocí příkazu docker níže.

docker run -it --rm -d -p 8080:80 --name web -v ~/data:/usr/share/nginx/html nginx:alpine

Nyní získáte náhodné číslo a řetězec kontejneru.

Možnost '-v ~/data:/usr/share/nginx/html ' připojí '~/data ' na místním počítači do kontejneru na '/usr/share/nginx/html ' adresář.

Nyní ověřte kontejner Docker pomocí následujícího příkazu.

docker ps

A uvidíte podobný výstup jako níže.

Poté znovu otevřete webový prohlížeč a zadejte IP adresu serveru s portem '8080 ' jak je uvedeno níže.

http://192.168.1.10:8080/

A nahoře získáte vlastní 'index.html', který jste právě vytvořili, což znamená '~/data ' adresář je připojen ke kontejneru '/usr/share/nginx/html ' adresář.

6. Kromě toho se můžete přihlásit do běžícího aktuálního běžícího kontejneru 'web ' provedením příkazu docker níže.

Nejprve zkontrolujte kontejner 'web ' běží.

docker ps

Nyní připojte ke kontejneru 'web' pomocí příkazu níže.

docker exec -it web /bin/sh

Uvnitř kontejneru zkontrolujte název hostitele kontejneru pomocí následujícího příkazu.

hostname

Zkontrolujte IP adresu kontejneru pomocí 'ip ' níže.

ip a

Zkontrolujte směrovací tabulku kontejneru pomocí následujícího příkazu.

route -n

Níže je podobný výstup, který získáte.

Chcete-li vyčistit své aktuální prostředí, zastavte 'web ' pomocí následujícího příkazu.

docker stop web

Můžete také odstranit všechny kontejnery se stavem „exited ' pomocí příkazu níže.

docker rm $(docker ps --filter "status=exited" -q)

Závěr

gratuluji! Úspěšně jste nainstalovali Docker na Debian 11 Bullseye. Také jste se naučili základní použití Dockeru pro stahování obrazu z Docker-Hub, spouštění kontejneru dockeru, kontrolu stavu kontejneru dockeru, protokoly a základní použití svazku Dockeru. V dalším kroku se můžete pokusit vytvořit vlastní bitovou kopii Dockeru pro vaši aplikaci a odeslat ji do úložiště Docker Hub.


Debian
  1. Jak nainstalovat Docker Engine na Debian 11

  2. Jak nainstalovat Docker na Debian 9 (Stretch)

  3. Jak nainstalovat a nakonfigurovat docker na Debian 11

  1. Jak nainstalovat Docker na Debian 10 Buster

  2. Jak nainstalovat Docker na Debian 10 Buster Linux

  3. Jak nainstalovat R na Debian 9

  1. Jak nainstalovat R na Debian 10

  2. Jak nainstalovat Docker na Debian 9

  3. Jak nainstalovat Docker na Debian 10