Úvod
Nové vydání CentOS 8 přineslo ve srovnání se svým předchůdcem mnoho inovativních prvků. Náš nedávný článek poskytuje hloubkovou analýzu nových a vylepšených funkcí CentOS 8.
Jednou z významných změn je rozhodnutí přestat poskytovat oficiální podporu pro Docker. Místo toho se RHE rozhodla zavést vestavěné nástroje pro vytváření a správu obrázků kontejnerů:buildah apodman. Tyto nástroje jsou kompatibilní s Dockerem, ale ke spuštění nepotřebují architekturu server/klient.
V případě, že ještě nejste připraveni tyto nové nástroje používat, tento tutoriál vysvětlí, jak nainstalovat Docker na CentOS 8.

Předpoklady
- Funkční instalace CentOS 8
- Uživatelský účet s právy sudo
- Přístup k terminálu
- Instalační program softwarového balíčku DNF (ve výchozím nastavení zahrnut v CentOS 8)
- Správce brány firewall deaktivován
Důležité: Deaktivace důležitých funkcí zabezpečení se nedoporučuje. Nicméně, firewalld
manager v CentOS 8 zabraňuje překladu DNS v kontejnerech Docker. Tento tutoriál obsahuje pokyny, jak disable firewalld
.
Přidat úložiště Docker pomocí DNF
CentOS 8 používá správce balíčků YUM verze v4.0.4. Tato verze nyní používá DNF (Dandified YUM).
DNF je správce softwarových balíků. Instaluje, provádí aktualizace a odstraňuje balíčky v distribucích Linuxu.
Pomocí DNF přidejte a povolte oficiální úložiště Docker CE. V okně terminálu zadejte následující příkaz:
sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Systém vás informuje, že úspěšně načetl úložiště.

sudo dnf repolist -v
Informace na obrazovce poskytují všechny relevantní podrobnosti.

Chcete-li zobrazit seznam všech dostupných balíčků docker-ce, zadejte:
dnf list docker-ce --showduplicates | sort -r
CentOS 8 bohužel nepodporuje konkrétní verze container.id balík. To znamená, že pouze některé verze docker-ce jsou k dispozici pro instalaci.

Existují dva způsoby, jak tento problém vyřešit a nainstalovat Docker na CentOS 8.
Nainstalujte Docker CE na CentOS 8
Možnost 1:Přeskočit balíčky s přerušenými závislostmi
Efektivním řešením je umožnit vašemu systému CentOS 8 nainstalovat verzi, která nejlépe splňuje kritéria, pomocí --nobest
příkaz:
sudo dnf install docker-ce --nobest
Instalace přeskočí nejnovější kandidáty a nainstaluje nejvhodnější verzi s požadovaným containerd.io balíčky.

Jakmile potvrdíte zadáním y , systém pokračuje v instalaci Docker CE 18.06.3.ce-3.el7.

Pokud se podíváte pozorně, uvidíte, že instalace přeskočila nejnovější verzi docker-ce protože nesplňuje kritéria.
Možnost 2:Ruční instalace balíčku containerd.io
Další možnost instalace Dockeru na CenOS 8 je nainstalovat containerd.io zabalit ručně, předem. Toto zástupné řešení vám umožňuje nainstalovat nejnovější docker-ce verze.
Použijte následující příkaz:
sudo dnf install https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.2.10-3.2.el7.x86_64.rpm
Potvrďte instalaci pomocí y . Úspěšně jste nainstalovali nejnovější verzi containerd.io .

Nyní můžeme přistoupit k instalaci nejnovější verze docker-ce jednoduchým příkazem:
sudo dnf install docker-ce -y
Níže uvedený výstup potvrzuje, že docker-ce-3:19.03.5-3.el7.x86_64 byla úspěšně nainstalována.

Spustit a otestovat Docker
Povolit Docker
Povolte a spusťte službu Docker pomocí:
sudo systemctl enable --now docker
Výstup potvrzuje, že jsme vytvořili symbolický odkaz.

Dále použijte tento krátký příkaz k potvrzení, že Docker je aktivní a běží:
systemctl status docker
Vidíme časové razítko a potvrzujeme, že Docker je aktivní.

Přidat uživatele do skupiny uživatelů Docker
Přidejte svého uživatele do skupiny dockerů pomocí následujícího příkazu:
sudo usermod -aG docker $USER
id $USER
Systém provede příkazy.

Zakažte firewall na CentOS 8
Jak již bylo zmíněno, musíme deaktivovat firewall, aby překlad DNS uvnitř kontejnerů Docker fungoval.
K deaktivaci firewallu v CentOS 8 stačí jeden jednoduchý příkaz:
sudo systemctl disable firewalld
Výstup potvrdí, že služba byla deaktivována.

V tomto okamžiku se doporučuje restartovat systém, aby se změna projevila.
Testování instalace dockeru stažením obrázku testovacího kontejneru
Stáhněte si malou alpskou image kontejneru docker pro testování instalace:
docker pull alpine
Systém stáhne nejnovější verzi obrázku.

Zkontrolujte, zda je obrázek k dispozici:
docker images
Systém zobrazí vaše obrázky Docker:

Spustit obrázek kontejneru Alpine
Pomocí Dockeru spusťte kontejner se staženým obrázkem a zkuste provést jednoduchou apk update
:
docker run -it --rm alpine /bin/sh
/# apk update
Výstup potvrzuje, že kontejner byl spuštěn.

Úspěšně jste nainstalovali a nakonfigurovali Docker na CentOS 8.