Comment installer Docker sur CentOS : Guide complet étape par étape
Docker a fondamentalement changé la façon dont les développeurs construisent, expédient et exécutent les applications. En empaquetant les logiciels dans des conteneurs légers et portables, Docker élimine le problème classique « ça fonctionne sur ma machine » et simplifie considérablement les flux de travail de développement et les déploiements en production. Si vous exécutez CentOS et souhaitez exploiter la puissance de la conteneurisation, ce guide complet vous guide à travers chaque étape — d’une mise à jour système complète à la configuration avancée.
Que vous déployiez une seule application web ou orchestriez des environnements multi-conteneurs complexes, l’installation correcte de Docker sur CentOS est l’étape critique première.
Prérequis
Avant de commencer, assurez-vous que vous disposez de :
- Un serveur CentOS 7 ou CentOS 8 (physique ou virtuel)
- Un compte utilisateur avec les privilèges
sudo - Une connexion Internet stable
- Une connaissance de base de la ligne de commande Linux
> Conseil Pro : Pour la meilleure expérience Docker, envisagez de l’exécuter sur un plan VPS Hosting. Un serveur privé virtuel vous donne un accès root complet, des ressources dédiées et la flexibilité d’exécuter des conteneurs sans les restrictions des environnements partagés.
Étape 1 : Mettre à jour le système
Avant d’installer un nouveau logiciel, mettez toujours à jour vos packages existants pour assurer la compatibilité et la sécurité. Exécutez la commande suivante :
sudo yum update -yCette commande actualise tous les packages installés vers leurs dernières versions. Cela peut prendre quelques minutes selon le nombre de mises à jour en attente. Un système entièrement à jour réduit le risque de conflits de dépendances lors de l’installation de Docker.
Étape 2 : Installer les dépendances requises
Docker dépend de plusieurs packages au niveau du système pour fonctionner correctement. Installez-les avec une seule commande :
sudo yum install -y yum-utils device-mapper-persistent-data lvm2Voici ce que fait chaque package :
| Package | Objectif |
|---|---|
yum-utils | Fournit l’utilitaire yum-config-manager pour gérer les dépôts |
device-mapper-persistent-data | Requis pour le pilote de stockage device mapper de Docker |
lvm2 | Support du Logical Volume Manager pour le backend de stockage de Docker |
Ces dépendances garantissent que Docker peut gérer efficacement et de manière fiable le stockage des conteneurs sur votre système CentOS.
Étape 3 : Ajouter le référentiel Docker officiel
Les référentiels de paquets par défaut de CentOS n’incluent pas les derniers paquets Docker. Vous devez ajouter le référentiel officiel de Docker pour obtenir la version stable la plus actuelle :
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoCette commande ajoute le référentiel CentOS officiel de Docker à la liste des référentiels de votre système. L’utilisation de la source officielle garantit que vous recevez des paquets Docker authentiques et à jour directement de Docker Inc., plutôt que des versions potentiellement obsolètes provenant de miroirs tiers.
Vous pouvez vérifier que le référentiel a été ajouté avec succès en listant vos référentiels configurés :
sudo yum repolistÉtape 4 : Installer Docker Engine
Avec le référentiel en place, l’installation de Docker est simple :
sudo yum install -y docker-ce docker-ce-cli containerd.io> Remarque : Il est recommandé d’installer également docker-ce-cli (l’interface de ligne de commande Docker) et containerd.io (le runtime du conteneur) aux côtés du moteur principal pour une configuration complète et prête pour la production.
Cela installe la Docker Community Edition (CE) — la version gratuite et open-source de Docker qui convient parfaitement aux charges de travail de développement et de production.
Étape 5 : Démarrer et activer le service Docker
L’installation de Docker ne le démarre pas automatiquement. Vous devez démarrer le daemon Docker et le configurer pour qu’il se lance automatiquement au démarrage du système :
sudo systemctl start docker
sudo systemctl enable dockersystemctl start docker — Démarre le service Docker immédiatement
systemctl enable docker — Configure Docker pour démarrer automatiquement à chaque redémarrage du serveur
Vérifier l’état du service
Confirmez que Docker fonctionne correctement :
sudo systemctl status docker
Vous devriez voir une sortie indiquant que le service est active (running). Si l’état affiche des erreurs, consultez les journaux système avec journalctl -u docker pour les détails de dépannage.
Étape 6 : Vérifier l’installation de Docker
Exécutez le test intégré de Docker pour confirmer que tout fonctionne comme prévu :
sudo docker run hello-world
Cette commande effectue les opérations suivantes :
Contacte le registre Docker Hub
Télécharge l’image de test légère hello-worldSi votre installation est réussie, vous verrez une sortie qui commence par :
Hello from Docker!
This message shows that your installation appears to be working correctly.Félicitations — Docker est maintenant entièrement installé et opérationnel sur votre serveur CentOS.
Étape 7 : Configurer Docker pour les utilisateurs non-root (Optionnel mais recommandé)
Par défaut, les commandes Docker nécessitent sudo (privilèges root). Pour la sécurité et la commodité dans les environnements de développement, vous pouvez permettre à des utilisateurs non-root spécifiques d’exécuter des commandes Docker en les ajoutant au groupe docker.
Créer le groupe Docker
Dans la plupart des cas, ce groupe est créé automatiquement lors de l’installation. Si ce n’est pas le cas, créez-le manuellement :
sudo groupadd dockerAjouter votre utilisateur au groupe Docker
Remplacez your_username par le nom d’utilisateur Linux réel :
sudo usermod -aG docker your_usernameAppliquer les modifications
Déconnectez-vous et reconnectez-vous pour actualiser votre appartenance au groupe. Vous pouvez également activer la modification dans la session actuelle :
newgrp dockerTester sans Sudo
docker run hello-worldSi cela s’exécute sans sudo et sans erreur de permission, la configuration fonctionne correctement.
> Avertissement de sécurité : Le groupe docker accorde des privilèges équivalents à l’utilisateur root. Ajoutez uniquement les utilisateurs de confiance à ce groupe dans les environnements de production.
Étape 8 : Référence des commandes Docker essentielles
Une fois Docker en cours d’exécution, voici les commandes les plus importantes que vous utiliserez quotidiennement :
Gestion des conteneurs
# List all running containers
docker ps
# List all containers (including stopped ones)
docker ps -a
# Start a stopped container
docker start container_id
# Stop a running container
docker stop container_id
# Remove a container
docker rm container_id
# Remove all stopped containers at once
docker container pruneGestion des images
# List all locally stored images
docker images
# Pull an image from Docker Hub
docker pull image_name
# Pull a specific version/tag
docker pull image_name:tag
# Remove a local image
docker rmi image_name
# Remove all unused images
docker image prune -aExécution des conteneurs
# Run a container interactively
docker run -it image_name /bin/bash
# Run a container in detached (background) mode
docker run -d image_name
# Run a container with port mapping
docker run -d -p 8080:80 image_name
# Run a container with a custom name
docker run -d --name my_container image_nameAffichage des journaux et des statistiques
# View container logs
docker logs container_id
# Follow live log output
docker logs -f container_id
# View real-time resource usage
docker statsÉtape 9 : Confirmer que Docker démarre au démarrage
Docker devrait déjà être configuré pour démarrer au démarrage après l’exécution de systemctl enable docker. Pour vérifier ou réactiver ce comportement :
sudo systemctl enable dockerPour désactiver le démarrage automatique (par exemple, sur une machine de développement où vous n’avez pas toujours besoin que Docker soit en cours d’exécution) :
sudo systemctl disable dockerÉtape 10 : Configuration avancée (Optionnel)
Installer Docker Compose
Docker Compose est un outil essentiel pour définir et gérer des applications multi-conteneurs à l’aide d’un simple fichier de configuration YAML. Installez la dernière version stable :
sudo curl -L "https://github.com/docker/compose/releases/download/v2.24.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-composeVérifiez l’installation :
docker-compose --versionAvec Docker Compose, vous pouvez définir des piles d’applications entières — serveurs web, bases de données, caches — dans un seul fichier docker-compose.yml et les lancer tous avec une seule commande : docker-compose up -d.
Configurer le daemon Docker
Vous pouvez personnaliser le comportement de Docker en modifiant (ou en créant) le fichier de configuration du daemon :
sudo nano /etc/docker/daemon.jsonUn exemple de configuration courant :
{
"log-driver": "json-file",
"log-opts": {
"max-size": "10m",
"max-file": "3"
},
"storage-driver": "overlay2",
"default-address-pools": [
{"base": "172.17.0.0/16", "size": 24}
]
}Après avoir modifié la configuration du daemon, redémarrez Docker pour appliquer les modifications :
sudo systemctl restart dockerLes paramètres courants du daemon que vous pouvez configurer incluent :
- Pilote de journalisation et rotation — Empêchez les journaux de conteneurs de consommer tout l’espace disque
- Pilote de stockage —
overlay2est le pilote recommandé pour CentOS - Paramètres DNS — Définissez des serveurs DNS personnalisés pour les conteneurs
- Miroirs de registre — Accélérez les téléchargements d’images avec des miroirs locaux
Configurer les règles de pare-feu (CentOS 7)
Si vous exécutez firewalld, vous devrez peut-être autoriser le trafic réseau de Docker :
sudo firewall-cmd --zone=public --add-masquerade --permanent
sudo firewall-cmd --reloadChoisir le bon environnement d’hébergement pour Docker
L’exécution de Docker en production nécessite un environnement serveur fiable et haute performance. Voici les meilleures options selon votre cas d’usage :
- Hébergement VPS — Idéal pour la plupart des déploiements Docker. L’accès root complet, les ressources évolutives et la tarification rentable font du VPS le choix incontournable pour les applications conteneurisées.
- Serveurs dédiés — Meilleur pour les environnements de production à fort trafic ou lorsque vous avez besoin de performances maximales en CPU, RAM et stockage pour exécuter des dizaines de conteneurs simultanément.
- Hébergement GPU — Parfait pour les charges de travail IA/ML exécutées dans des conteneurs Docker qui nécessitent une accélération GPU pour l’entraînement ou l’inférence de modèles.
- VPS avec cPanel — Si vous avez besoin de Docker aux côtés d’un panneau de contrôle convivial pour gérer les sites web et les e-mails, cette combinaison offre le meilleur des deux mondes.
Dépannage des problèmes Docker courants sur CentOS
Le démon Docker ne démarre pas
Vérifiez les journaux système pour les détails des erreurs :
journalctl -u docker --no-pager | tail -50Erreurs d’accès refusé
Si vous voyez Got permission denied while trying to connect to the Docker daemon socket, assurez-vous que votre utilisateur est dans le groupe docker et que vous vous êtes déconnecté et reconnecté.
Impossible de récupérer les images
Vérifiez que votre serveur a un accès Internet sortant et que DNS résout correctement :
curl -I https://registry-1.docker.ioProblèmes de mise en réseau des conteneurs
Redémarrez Docker pour réinitialiser les ponts réseau :
sudo systemctl restart dockerConclusion
Vous avez maintenant installé avec succès Docker sur CentOS et disposez d’une base solide pour travailler avec les conteneurs. Voici un récapitulatif rapide de ce qui a été couvert :
- ✅ Mise à jour du système et installation des dépendances
- ✅ Ajout du référentiel Docker officiel
- ✅ Installation de Docker CE et vérification de l’installation
- ✅ Configuration de Docker pour démarrer au boot
- ✅ Configuration de l’accès utilisateur non-root
- ✅ Apprentissage des commandes Docker essentielles
- ✅ Installation de Docker Compose pour la gestion multi-conteneurs
- ✅ Exploration des options de configuration du daemon
Docker sur CentOS ouvre un monde de possibilités — de l’exécution d’environnements de développement isolés au déploiement d’architectures de microservices évolutives en production. Les compétences en conteneurisation que vous développez ici serviront de fondation pour des sujets plus avancés comme l’orchestration Kubernetes, les pipelines CI/CD et le développement d’applications cloud-native.
Pour la meilleure expérience Docker, assurez-vous que votre environnement serveur est à la hauteur de la tâche. Explorez les plans AlexHost VPS Hosting pour une base puissante, fiable et abordable pour toutes vos charges de travail conteneurisées.
sur tous les services d'hébergement