Présentation
La nouvelle version de CentOS 8 a introduit de nombreux éléments innovants par rapport à son prédécesseur. Notre récent article fournit une analyse approfondie des fonctionnalités nouvelles et améliorées de CentOS 8.
Un changement important est la décision de ne plus fournir de support officiel pour Docker. Au lieu de cela, RHE a choisi d'introduire des outils intégrés pour la création et la gestion d'images de conteneur :buildah et podman. Ces outils sont compatibles avec Docker mais n'ont pas besoin d'une architecture serveur/client pour fonctionner.
Si vous n'êtes pas encore prêt à utiliser ces nouveaux outils, ce tutoriel expliquera comment installer Docker sur CentOS 8.
Prérequis
- Une installation fonctionnelle de CentOS 8
- Un compte utilisateur avec des privilèges sudo
- Accès au terminal
- Programme d'installation du package logiciel DNF (inclus par défaut dans CentOS 8)
- Le gestionnaire de pare-feu est désactivé
Important : La désactivation des fonctions de sécurité critiques n'est pas encouragée. Cependant, le firewalld
manager dans CentOS 8 empêche la résolution DNS dans les conteneurs Docker. Ce tutoriel contient des instructions sur la façon de disable firewalld
.
Ajouter un référentiel Docker à l'aide de DNF
CentOS 8 utilise la version v4.0.4 du gestionnaire de packages YUM. Cette version utilise désormais DNF (Dandifié YUM).
DNF est un gestionnaire de progiciels. Il installe, effectue des mises à jour et supprime des packages sur les distributions Linux.
Utilisez DNF pour ajouter et activer le référentiel officiel Docker CE. Tapez la commande suivante dans votre fenêtre de terminal :
sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Le système vous informe qu'il a récupéré avec succès le référentiel.
sudo dnf repolist -v
Les informations à l'écran fournissent tous les détails pertinents.
Pour répertorier tous les packages docker-ce disponibles, tapez :
dnf list docker-ce --showduplicates | sort -r
Malheureusement, CentOS 8 ne prend pas en charge des versions spécifiques de container.id emballer. Cela signifie que seules certaines versions de docker-ce sont disponibles pour l'installation.
Il existe deux façons de résoudre ce problème et d'installer Docker sur CentOS 8.
Installer Docker CE sur CentOS 8
Option 1 :Ignorer les packages avec des dépendances rompues
Une solution efficace consiste à autoriser votre système CentOS 8 à installer la version qui répond le mieux aux critères, en utilisant le --nobest
commande :
sudo dnf install docker-ce --nobest
L'installation ignore les derniers candidats et installe la version la plus appropriée avec le containerd.io requis colis.
Une fois que vous avez confirmé en saisissant y , le système procède à l'installation de Docker CE 18.06.3.ce-3.el7.
Si vous regardez attentivement, vous verrez que l'installation a ignoré la dernière version de docker-ce car il ne répondait pas aux critères.
Option 2 :Installer manuellement le package containerd.io
Une autre option pour installer Docker sur CenOS 8 est d'installer le containerd.io emballer manuellement, à l'avance. Cette solution de contournement vous permet d'installer la dernière version de docker-ce version.
Utilisez la commande suivante :
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
Confirmez l'installation avec y . Vous avez installé avec succès la dernière version de containrd.io .
Nous pouvons maintenant procéder à l'installation de la dernière version de docker-ce avec une simple commande :
sudo dnf install docker-ce -y
La sortie ci-dessous confirme que docker-ce-3:19.03.5-3.el7.x86_64 a été installé avec succès.
Démarrer et tester Docker
Activer Docker
Activez et démarrez le service Docker avec :
sudo systemctl enable --now docker
La sortie confirme que nous avons créé un lien symbolique.
Ensuite, utilisez cette courte commande pour confirmer que Docker est actif et en cours d'exécution :
systemctl status docker
Nous voyons l'horodatage et confirmons que Docker est actif.
Ajouter un utilisateur au groupe d'utilisateurs Docker
Ajoutez votre utilisateur au groupe docker avec la commande suivante :
sudo usermod -aG docker $USER
id $USER
Le système exécute les commandes.
Désactiver le pare-feu sur CentOS 8
Comme mentionné précédemment, nous devons désactiver le pare-feu pour que la résolution DNS dans les conteneurs Docker fonctionne.
Une simple commande suffit pour désactiver firewalld dans CentOS 8 :
sudo systemctl disable firewalld
La sortie confirme que le service a été désactivé.
À ce stade, il est recommandé de redémarrer votre système pour que la modification prenne effet.
Tester l'installation de Docker en extrayant l'image du conteneur de test
Télécharger un petit alpin image du conteneur Docker pour tester l'installation :
docker pull alpine
Le système télécharge la dernière version de l'image.
Vérifiez si l'image est disponible :
docker images
Le système liste vos images Docker :
Lancer l'image du conteneur Alpine
Utilisez Docker pour exécuter le conteneur avec l'image téléchargée et essayez de faire une simple apk update
:
docker run -it --rm alpine /bin/sh
/# apk update
La sortie confirme que le conteneur a été lancé.
Vous avez installé et configuré avec succès Docker sur CentOS 8.