Docker regroupe une application et ses dépendances pour qu'elle fonctionne partout de la même façon. Sur un serveur dédié, cette portabilité s'accompagne d'une machine entière derrière : chaque cœur, toute la RAM et le SSD NVMe local appartiennent à vos conteneurs. Ce guide couvre l'installation sur Ubuntu, CentOS et Debian, puis la configuration post-installation dont un serveur de production a besoin. Les serveurs dédiés Kimsufi démarrent à 11,10 $/mois.

À retenir

  • Installez le moteur depuis le dépôt apt de Docker, pas depuis le paquet de la distribution. La version de la distro prend plusieurs releases de retard sur la stable.
  • Une seule commande installe la plateforme complète : moteur, CLI, containerd, Buildx et Compose.
  • Les commandes sont identiques sur Ubuntu, Debian et les systèmes de la famille RHEL. Seul le gestionnaire de paquets change.
  • Ajouter un utilisateur au groupe docker lui donne des droits administrateur sur le serveur.
  • Docker écrit ses propres règles de pare-feu et contourne ufw. Publiez avec intention, sinon vous exposez une application à Internet.

Qu'est-ce que Docker et pourquoi l'utiliser sur un serveur dédié ?

Docker est une plateforme de conteneurs qui assemble une application, son runtime et ses bibliothèques dans une seule image. Un conteneur Docker fait ensuite tourner cette image comme un processus isolé, partageant le kernel du serveur au lieu de démarrer un système d'exploitation invité : le démarrage prend environ une seconde.

C'est au niveau du matériel que le choix de plateforme se justifie. Une machine virtuelle paie un impôt d'hyperviseur, et des conteneurs à l'intérieur le paient deux fois. Un serveur dédié peut héberger des workloads Docker sans cette couche : sur du matériel physique, les cœurs vous appartiennent directement. Vous avez aussi le root complet, chose qu'une plateforme partagée autorise rarement. Les images se construisent plus vite, et un conteneur Docker garde une latence disque prévisible, car aucun autre locataire ne court après le même SSD.

Prérequis : versions d'OS, accès root et exigences réseau

Vérifiez quatre choses d'abord.

  • Système d'exploitation. Une édition 64 bits encore supportée par Docker : Ubuntu 22.04, 24.04 ou 26.04 LTS, Debian 12 ou 13, CentOS Stream 9 ou 10, RHEL 9 ou 10, ou Fedora. Architectures couvertes : amd64 et arm64. La version 7 ne reçoit aucun paquet.
  • Privilèges. Root ou compte sudo.
  • Stockage. 2 Go de RAM est un plancher réaliste, et les images s'accumulent vite. Un serveur dédié Intel avec SSD NVMe vous donne l'espace et les IOPS que les couches d'images demandent.
  • Réseau. HTTPS sortant sur le port 443, pour que le serveur puisse télécharger depuis download.docker.com et votre registre.

Retirez d'abord tout paquet Docker ou Podman livré par la distribution, sinon l'installation échoue.

Comment installer Docker Engine sur un serveur dédié ?

Quatre étapes : ajouter la source de paquets officielle, installer les paquets, démarrer le moteur, lancer une image de test. Cinq minutes de préparation sur un serveur vierge.

Ajouter le dépôt officiel APT/YUM de Docker

Les paquets sont signés, donc la clé arrive d'abord. Sur Ubuntu :

bash
sudo apt install -y ca-certificates curl

sudo install -m 0755 -d /etc/apt/keyrings

sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg \

-o /etc/apt/keyrings/docker.asc

bash
sudo chmod a+r /etc/apt/keyrings/docker.asc

echo "deb [arch=$(dpkg --print-architecture) \

signed-by=/etc/apt/keyrings/docker.asc] \ https://download.docker.com/linux/ubuntu \ $(. /etc/os-release && echo "$VERSION_CODENAME") stable" \ | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

bash
sudo apt update

Le canal stable est celui qu'il vous faut. Les canaux test et nightly existent aussi, en marge, et ne conviennent pas à une production.

Installer Docker Engine sur Ubuntu

L'Édition Community est gratuite. Installez-la avec la CLI, containerd, Buildx et Compose :

bash
sudo apt install -y docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin

Omettre les deux derniers est une erreur fréquente. Sans eux, docker compose et buildx manquent, et la CLI renvoie unknown command.

Installer Docker Engine sur CentOS / RHEL

Ces systèmes utilisent dnf et un fichier .repo, donc pas d'étape keyring :

bash
sudo dnf -y install dnf-plugins-core

sudo dnf config-manager --add-repo \

https://download.docker.com/linux/centos/docker-ce.repo

bash
sudo dnf -y install docker-ce docker-ce-cli containerd.io \
docker-buildx-plugin docker-compose-plugin

sudo systemctl enable --now docker

Sur dnf5, la deuxième ligne devient dnf config-manager addrepo --from-repofile=<url>. Ici, le service ne se lance pas tout seul, d'où le --now.

Installer Docker Engine sur Debian

Identique à Ubuntu : remplacez debian par ubuntu dans les deux URLs, puis relancez les quatre dernières commandes de la procédure Ubuntu. Si les paquets sont introuvables, votre codename s'est résolu de travers. Affichez $VERSION_CODENAME et comparez-le avec la liste amd64 téléchargeable depuis cette URL.

Vérifier l'installation et premières commandes

Trois commandes confirment une installation qui marche :

bash
sudo docker run hello-world

docker compose version

sudo docker info | grep -i "storage driver"

Le storage driver doit indiquer overlay2. Toute autre valeur signifie un système de fichiers non supporté sous /var/lib/docker.

Résultat attendu hello-world affiche un message de confirmation et se termine. Le moteur tourne, le socket docker.sock répond, le registry est atteignable.

Que configurer après l'installation ?

Le moteur tourne, mais il n'est pas prêt pour le trafic de production. Trois réglages comptent.

Post-install : faire tourner Docker avec un utilisateur non-root

Ajoutez votre compte au groupe docker pour vous passer du préfixe sudo :

bash
sudo usermod -aG docker $USER

newgrp docker

💡 Astuce : le groupe docker équivaut à root. N'importe qui dedans peut monter le système de fichiers du serveur et tout lire. Accordez-le uniquement là où vous accorderiez des droits administrateur, et utilisez le mode rootless sur des serveurs partagés.

Configurer le pare-feu et le stockage de Docker

Le moteur insère ses propres règles iptables avant les vôtres : un port publié reste atteignable même quand ufw le dit bloqué. Filtrez dans la chaîne DOCKER-USER, et attachez tout ce qui n'est pas public à l'adresse loopback :

Chemin du trafic des conteneurs Docker à travers le pare-feu d'un serveur dédié
bash
docker run -d -p 127.0.0.1:5432:5432 postgres:17

sudo iptables -I DOCKER-USER -i eth0 ! -s 203.0.113.0/24 -j DROP

Deux habitudes de firewall à garder : publier seulement ce qu'une application sert véritablement, et ne jamais exposer ce socket. Pour le stockage, gardez /var/lib/docker sur un disque local rapide. Les images, les couches inscriptibles et chaque volume nommé vivent là : un serveur occupé remplit des dizaines de gigaoctets en une semaine. Gardez les données applicatives dans un volume docker, pas dans la couche du conteneur, et récupérez de l'espace avec system prune -a. Un serveur de la gamme SYS avec SSD NVMe dès 33,20 $/mois absorbe les pulls de registry et les builds concurrents.

Activer et démarrer le service Docker avec systemd

Le service doit survivre à un reboot :

bash
sudo systemctl enable docker

Les réglages du moteur vont dans /etc/docker/daemon.json, pas dans le fichier unit. La rotation des logs est le réglage le plus souvent oublié, et un workload bavard remplira le disque sans elle :

{ "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" } }

Appliquez-la avec un restart du service.

Comment mettre à jour ou désinstaller Docker Engine ?

Mettre à jour Docker Engine sans risque

L'installation venant du dépôt apt, la mise à jour est une opération de paquets ordinaire. Rafraîchissez l'index, puis avancez les cinq paquets ensemble, sinon la CLI et le moteur tombent sur des versions d'API incompatibles :

bash
sudo apt install --only-upgrade -y docker-ce docker-ce-cli \

containerd.io docker-buildx-plugin docker-compose-plugin

Le service redémarre et arrête vos conteneurs si live restore est désactivé. Lisez les release notes, testez la montée sur un serveur de staging, puis choisissez une fenêtre de maintenance.

Désinstaller Docker complètement

Une uninstall laisse volontairement les images et volumes derrière elle. En superutilisateur, purgez les paquets et retirez les répertoires de données :

bash
apt purge -y 'docker*' containerd.io

rm -rf /var/lib/docker /var/lib/containerd

Problèmes courants et conseils de dépannage

SymptômeCauseCorrectif
Impossible de connecter au démon DockerService non démarréDémarrez le service, puis lisez journalctl -u docker -n 50
Permission denied sur docker.sockUtilisateur hors du groupe dockerAjoutez-le, puis reconnectez la session
Impossible de trouver le paquetDépôt absent ou codename erronéRajoutez-le, puis mettez à jour
No space left on deviceRépertoire de données pleinPurgez les images inutilisées, déplacez-le vers un volume plus grand
Address already allocatedUn autre processus le détientTrouvez-le avec ss -tulpn, publiez-en un autre

Vous préférez une console web à la CLI ? Portainer tourne en conteneur sur le même host et couvre la majeure partie de l'administration quotidienne. Pour un runtime de langage à côté du moteur, notre guide sur l'installation de Go sur un serveur dédié suit le même modèle que le dépôt apt.

FAQ

Comment installer Docker sur mon serveur ?

Ajoutez le dépôt officiel, installez le moteur avec la CLI, containerd et les deux extras, puis lancez hello-world pour confirmer que le service répond.

Pourquoi certaines équipes quittent-elles Docker ?

Certaines équipes ont changé de runtime, pas de format. Kubernetes a retiré le shim Docker en 2022 et containerd a pris le relais. Le format d'image est un standard ouvert : rien n'est enfermé.

Docker est-il encore pertinent en 2026 ?

Oui. Il reste l'outil de référence pour construire et partager des images de conteneurs Docker. C'est l'outillage autour qui a plus bougé que l'outil lui-même.

Docker est-il meilleur qu'une VM ?

Pour une seule application, en général : pas de kernel invité, un démarrage mesuré en secondes, beaucoup moins de RAM. La machine virtuelle gagne quand il faut un kernel différent ou une isolation forte.

Comment lancer des commandes Docker sans sudo ?

Lancez usermod -aG docker $USER, puis ouvrez une nouvelle session. Cela octroie un accès administratif : gardez le groupe restreint.

Quelle est la méthode recommandée pour mettre à jour Docker Engine ?

Mettez à niveau les cinq paquets en une seule transaction pour que la CLI et le moteur restent calés sur des versions compatibles. Activez live restore si les conteneurs doivent survivre au restart.

Comment configurer les storage drivers de Docker sur un serveur dédié ?

Gardez le driver overlay2 par défaut. Réglez le répertoire de données et les options du driver dans daemon.json, redémarrez le service et confirmez avec docker info.

Quels ports de pare-feu dois-je ouvrir pour Docker ?

Aucun pour l'installation. N'ouvrez que ce que vos conteneurs publient, filtrez dans la chaîne DOCKER-USER, et gardez le socket hors réseau.

Comment dépanner des erreurs « docker daemon not running » ?

Vérifiez l'état du service, puis lisez journalctl -u docker. Un daemon.json mal formé est la cause habituelle : une erreur de syntaxe l'arrête du silence.

Conclusion

Installer Docker sur un serveur dédié prend cinq minutes. Ce qui compte plus, c'est la configuration qui suit : le groupe docker traité comme un vrai privilège, des règles de firewall qui survivent à celles du moteur, la rotation des logs avant que le disque ne se remplisse, et un répertoire de données sur un disque qui suit. Ces quatre points, et le serveur fait tourner vos applications des années sans attention.

Déployez Docker sur bare metal dès aujourd'hui. Parcourez la gamme KS Kimsufi dès 11,10 $/mois pour un premier hôte, ou la gamme Rise dès 72,00 $/mois quand builds et bases de données demandent de la marge. Chaque serveur inclut l'accès root complet, une bande passante non plafonnée et la protection DDoS. Contactez notre équipe commerciale pour dimensionner votre déploiement.

Équipe Kimsufi