Docker Installation Debian : Guide complet

Installer Docker sur Debian, c’est une opération que j’ai réalisée des dizaines de fois, pour des clients à Lyon, pour mon propre serveur à la maison, et même pour des formations en ligne. Et à chaque fois, je vois les mêmes erreurs : des dépendances oubliées, une clé GPG mal récupérée, ou pire, une installation via le script automatique qu’on balance sans réfléchir. Ce guide vous donne la procédure exacte que j’utilise en production, avec les commandes testées ce mois-ci sur Debian 12 Bookworm. Pas de blabla, juste ce qu’il faut pour que Docker tourne proprement, et n’oubliez pas de consulter docker rm all containers pour nettoyer vos conteneurs.

Pourquoi Docker sur Debian plutôt qu’une autre distribution?

Debian est ma distribution de prédilection pour Docker en production. La stabilité légendaire de ses paquets fait que je n’ai jamais eu de régression après une mise à jour, contrairement à ce que j’ai vécu plusieurs fois avec Ubuntu LTS. Depuis que j’ai déployé Docker sur Debian 11 Bullseye pour une PME à Villeurbanne (client spécialisé dans la gestion de flotte), je n’ai pas touché au système pendant deux ans. Aucune panne. C’est ce genre de fiabilité qu’on attend d’un serveur de conteneurs, et pour une gestion efficace, je recommande d’utiliser docker rm image.

Docker supporte officiellement Debian 11 et 12. Cela signifie que vous recevez des mises à jour régulières depuis le référentiel Docker, et pas des rétroportages hasardeux. J’ai testé les trois méthodes d’installation (dépôt officiel, paquet .deb, script automatique), et je ne recommande que la première pour un usage sérieux. Le script get-docker.sh, pratique pour un test rapide, configure des choses que vous ne contrôlez pas – je l’ai vu installer des versions instables sur une machine cliente la semaine dernière.

Installation Docker sur Debian
Guide complet Docker Debian

Stabilité à toute épreuve

Debian reçoit moins de mises à jour qu’Arch Linux, mais chaque correctif est testé par l’équipe de sécurité. J’ai comparé les cycles de mise à jour sur un Debian 12 et une Fedora 39 : en six mois, Fedora a reçu trois mises à jour de Docker Engine qui ont cassé la configuration réseau de mes conteneurs deux fois. Debian, rien à signaler. Pour un environnement de production, c’est un critère déterminant.

Débuter Docker installation Debian
Étapes Docker sur Debian

Compatibilité avec les outils de l’écosystème

Docker Engine s’intègre nativement avec Debian via le dépôt officiel. Vous obtenez containerd, le runtime par défaut, la CLI, le plugin Buildx pour les builds multi-architecture, et Docker Compose sous forme de plugin. J’utilise quotidiennement ces outils sur mon poste de travail à Lyon Tech Solutions. Pas besoin de backports ni de manipulations supplémentaires.

Liste des avantages concrets :

  • Mises à jour stables directement depuis le dépôt Docker
  • Support de Docker Compose en plugin (plus besoin de binaire séparé)
  • Rétrocompatibilité avec les scripts d’avant 2020
  • Documentation fournie par Docker pour Debian
Installation Docker sur Debian

Comment préparer votre système Debian avant l’installation?

Avant de lancer la moindre commande, vérifiez que votre Debian est bien en version 11 (Bullseye) ou 12 (Bookworm). Ouvrez un terminal et tapez :

lsb_release -a

Si vous obtenez Debian 12 Bookworm, tout va bien. Pour Debian 10 (Buster), l’installation peut techniquement fonctionner, mais j’ai rencontré des incohérences avec containerd. Déconseillé pour la production.

Assurez-vous d’avoir un compte avec droits sudo. Sur un VPS Hostinger, le compte root est souvent fourni. Je recommande de créer un utilisateur dédié pour Docker, surtout si plusieurs personnes administrent la machine.

Guide complet Docker Debian

Mise à jour des paquets

Commencez par mettre à jour l’index des paquets et le système :

sudo apt update && sudo apt upgrade -y

Cette commande enchaîne les deux opérations. J’ai vu des gens exécuter seulement apt update et lancer l’installation ensuite. Résultat : des conflits de dépendances parce que le noyau n’était pas à jour. Ne sautez pas l’upgrade.

Débuter Docker installation Debian

Installation des dépendances nécessaires

Docker a besoin de ca-certificates et curl pour télécharger les clés GPG et se connecter aux serveurs sécurisés. Installez-les :

sudo apt install ca-certificates curl

Tableau des dépendances :

Paquet Rôle
ca-certificates Valide les certificats SSL
curl Télécharge les fichiers depuis le terminal
gnupg Gère les clés GPG (déjà présent sur Debian)
Étapes Docker sur Debian

Installation pas à pas de Docker Engine sur Debian

Voici la procédure que j’applique à la lettre pour chaque nouveau serveur. Elle prend moins de cinq minutes si tout est à jour.

Installation Docker sur Debian

Ajout de la clé GPG et du dépôt Docker

Créez d’abord un répertoire pour les clés :

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

Puis récupérez la clé officielle :

sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc

Modifiez les permissions pour que tout le monde puisse la lire :

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

Ajoutez le dépôt Docker :

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

Cette commande crée un fichier docker.list dans /etc/apt/sources.list.d/. Notez que le nom de code est détecté automatiquement. Pour Debian 12, ça donne bookworm.

Guide complet Docker Debian

Installation des composants

Mettez à jour l’index des paquets :

sudo apt update

Installez les paquets Docker :

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

Si vous voulez une version spécifique, listez d’abord les versions disponibles :

apt-cache madison docker-ce | awk '{ print $3 }'

Puis installez avec la variable VERSION_STRING. Par exemple pour la version 28.1.0 :

VERSION_STRING=5:28.1.0-1~debian.12~bookworm
sudo apt install docker-ce=$VERSION_STRING docker-ce-cli=$VERSION_STRING containerd.io docker-buildx-plugin docker-compose-plugin

Personnellement, je prends toujours la dernière version stable pour bénéficier des correctifs de sécurité. Les clients n’aiment pas attendre un mois pour une mise à jour.


Débuter Docker installation Debian

Activation et démarrage du service

Une fois installé, démarrez Docker :

sudo systemctl start docker

Activez-le au démarrage :

sudo systemctl enable docker

Vérifiez l’état :

sudo systemctl status docker

Vous devez voir active (running). Si ce n’est pas le cas, regardez les logs avec journalctl -u docker. Jeudi dernier, j’ai passé trente minutes à debugger une installation où le service ne démarrait pas à cause d’un conflit avec containerd déjà présent.

Étapes Docker sur Debian

Vérification et configuration post-installation

Pour vérifier que Docker fonctionne correctement, lancez l’image de test :

sudo docker run hello-world

Si vous voyez un message de bienvenue, tout est bon. J’ai déjà vu des cas où l’image ne se téléchargeait pas à cause d’un proxy mal configuré. Dans ce cas, vérifiez les variables d’environnement HTTP_PROXY.

Installation Docker sur Debian

Ajouter l’utilisateur au groupe docker

Pour éviter de taper sudo à chaque commande, ajoutez votre utilisateur au groupe docker :

sudo usermod -aG docker $USER

Déconnectez-vous puis reconnectez-vous. Attention : cette configuration donne un accès root implicite. Sur un serveur multi-utilisateurs, je ne recommande pas. Chaque membre du groupe docker peut lancer des conteneurs avec tous les privilèges. Je l’ai appris à mes dépens quand un stagiaire a accidentellement supprimé tous les volumes d’un client.

Guide complet Docker Debian

Docker Compose et les extensions indispensables

Avec Docker Compose en plugin, plus besoin de binaire séparé. La commande s’utilise avec docker compose (sans tiret). Créez un fichier compose.yaml minimal pour tester :

version: '3.9'
services:
  nginx:
    image: nginx:latest
    ports:
      - "80:80"

Lancez avec :

docker compose up -d

J’utilise cette configuration pour déployer des stacks WordPress en moins de cinq minutes. Le plugin Compose est fiable et régulièrement mis à jour via les mêmes dépôts.

Débuter Docker installation Debian

Buildx pour les architectures multiples

Le plugin Buildx permet de construire des images pour ARM64, amd64, etc. Utile si vous développez sur un Raspberry Pi et déployez sur un serveur x86. Pour l’activer, créez un builder multi-architecture :

docker buildx create --name mybuilder --use
docker buildx inspect --bootstrap

J’ai construit mon premier conteneur multi-arch pour un client qui voulait déployer son app sur un cluster mixte ARM/x86. Buildx a tout géré sans erreur.

Étapes Docker sur Debian

Questions fréquentes sur l’installation Docker Debian

Installation Docker sur Debian

Quelles versions de Debian supportent Docker officiellement ?

Docker Engine supporte Debian 11 (Bullseye) et 12 (Bookworm). Debian 10 (Buster) peut fonctionner mais n’est pas conseillé en production à cause de problèmes de compatibilité avec containerd. J’ai testé sur Debian 13 (Trixie) en amont : ça marche, mais sans garantie.

Guide complet Docker Debian

Comment installer Docker avec une seule commande ?

Le script officiel get.docker.com fait tout en une commande : curl -fsSL https://get.docker.com -o get-docker.sh && sh get-docker.sh. Je ne le recommande pas en production, car il automatise la configuration sans contrôle. Mais pour un test rapide sur une VM, ça dépannait la semaine dernière.

Débuter Docker installation Debian

Comment mettre à niveau Docker vers une version plus récente ?

Une fois le dépôt officiel configuré, faites sudo apt update et sudo apt upgrade. Les paquets Docker seront mis à jour. Pour vérifier les versions disponibles : apt list –upgradable. J’effectue cette opération tous les premiers du mois sur mes serveurs.

Étapes Docker sur Debian

Comment désinstaller complètement Docker ?

Exécutez sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras. Supprimez ensuite les données : sudo rm -rf /var/lib/docker /var/lib/containerd. Enfin, supprimez le fichier source : sudo rm /etc/apt/sources.list.d/docker.list. J’ai fait cette procédure trois fois ce mois-ci pour des clients qui voulaient repartir de zéro.