Installer Docker sur Debian 13 : guide pas à pas du dépôt officiel
Installez Docker sur Debian 13 via le dépôt APT officiel pour des mises à jour automatiques.
- Debian 13 « Trixie » est prise en charge par Docker Engine.
- Comptez 1 Go de RAM et 25 Go de SSD minimum.
- Purgez docker.io, docker-compose et podman-docker avant.
- Ajoutez la clé GPG dans /etc/apt/keyrings avec perm 0755.
- Déclarez le dépôt dans docker.sources, puis apt update.
- Lancez ensuite apt install docker-ce sur la distribution ciblée.
Prérequis, dépendances et suppression des anciennes versions Docker
Versions Debian et architectures compatibles
- Debian 13 (Trixie) : version stable prise en charge par Docker Engine
- Debian 12 (Bookworm) : version oldstable prise en charge par Docker Engine
- Debian 10 (Buster) : version minimale requise pour Docker actuel
- Architectures x86_64, armhf, arm64 et ppc64le : installations en 64 bits obligatoires
- Noyau 3.10 minimum : prérequis incontournable, Debian 9 n’est plus compatible
Nettoyage des anciens paquets Docker
- Purger docker.io : évite les conflits avec la version des dépôts Debian
- Retirer docker-compose : remplacé par le plugin officiel docker-compose-plugin
- Supprimer podman-docker : paquet incompatible avec Docker Engine
- Vérifier ufw et firewalld : ces pare-feu peuvent bloquer les ports conteneurs
- Libérer les ports conteneurs : par exemple le port 3306 pour MariaDB ou le 8081 pour PHPMyAdmin
Prérequis système avant installation
Avant de toucher au dépôt Docker, assurez-vous que votre machine répond aux exigences matérielles et logicielles minimales. Comptez au moins 1 Go de RAM et 25 Go d’espace SSD disponibles pour héberger confortablement les images et les volumes de conteneurs.
Vérifiez également que votre système est bien en 64 bits, condition indispensable pour l’installation sur Debian 13. La variable VERSION_CODENAME doit renvoyer trixie, ce qui confirmera que le nom de code correspond à la version stable attendue par les dépôts Docker.
Enfin, pensez à mettre à jour votre système avec les commandes apt update et apt upgrade avant toute manipulation. Cette étape simple évite la plupart des erreurs de dépendances lors de l’ajout du dépôt officiel à l’étape suivante.
Ajouter le dépôt officiel Docker : clé GPG et sources APT

La méthode recommandée par Docker passe par son dépôt APT officiel, ce qui garantit des mises à jour automatiques via apt. Commencez par installer les dépendances nécessaires : ca-certificates et curl. Créez ensuite le répertoire des clés avec les permissions 0755 sur /etc/apt/keyrings, puis téléchargez la clé GPG officielle vers /etc/apt/keyrings/docker.asc.
Déclarez ensuite le dépôt dans un fichier /etc/apt/sources.list.d/docker.sources. Comme la variable $VERSION_CODENAME renvoie trixie sur Debian 13, le dépôt cible automatiquement la bonne distribution. Cette approche évite toute incompatibilité avec les paquets Debian.
Terminez par un apt update obligatoire pour que le système indexe le nouveau dépôt. Sans cette étape, apt install docker-ce échouera avec une erreur de paquet introuvable. Vérifiez que la clé GPG est bien lue en consultant la sortie de la commande : toute erreur de signature apparaîtra immédiatement et devra être corrigée avant de poursuivre.
Installer les paquets Docker Engine sous Debian 13
Une fois le dépôt officiel Docker ajouté et la clé GPG enregistrée, l’installation des paquets se fait en une seule commande APT. Docker fournit cinq paquets principaux à installer ensemble pour disposer d’un moteur complet et fonctionnel.
- docker-ce : le moteur Docker proprement dit, indispensable.
- docker-ce-cli : l’interface en ligne de commande docker.
- containerd.io : le runtime de conteneurs sous-jacent.
- docker-buildx-plugin : le plugin de builds avancés.
- docker-compose-plugin : la commande docker compose pour les stacks multi-conteneurs.
La commande à exécuter après la mise à jour de l’index APT :
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
APT télécharge les paquets, installe le service containerd puis démarre automatiquement docker.service. Sur Debian 13, le noyau installé par défaut dépasse largement le minimum requis de noyau 3.10, mais il est bon de vérifier que le système dispose d’au moins 1 Go de RAM et de 25 Go d’espace SSD pour accueillir images et volumes sans saturer le disque.
Si vous devez figer une version précise au lieu de la dernière disponible, indiquez explicitement le numéro : sudo apt install docker-ce=VERSION docker-ce-cli=VERSION containerd.io docker-buildx-plugin docker-compose-plugin. Cette méthode est utile en production pour garantir des déploiements reproductibles.
Le script get.docker.com reste une alternative rapide, mais il est réservé aux environnements de développement ou de test : la méthode par dépôt APT offre les mises à jour automatiques et un meilleur contrôle des versions. Une fois les paquets installés, le service est actif et prêt à être testé.
Vérifier l’installation et la version de Docker
Contrôler le service et la version
Une fois les paquets installés, vérifiez que le service Docker fonctionne correctement avant de lancer le moindre conteneur. Plusieurs commandes simples permettent de confirmer que tout est en ordre.
- systemctl status docker affiche l’état du service et confirme qu’il est actif
- docker version détaille les versions du client et du daemon installés
- systemctl enable docker active le démarrage automatique à chaque boot
- Service actif par défaut après installation via le dépôt officiel APT
Le service démarre automatiquement après l’installation sur Debian 13. La commande systemctl status docker doit retourner un statut active (running) avec la mention enabled. Si le service reste inactif, lancez-le avec systemctl start docker avant de poursuivre.
La sortie de docker version se divise en deux blocs : le Client et le Server. Les deux doivent afficher une version cohérente. Un message d’erreur côté Server indique généralement que le daemon n’est pas démarré ou que l’utilisateur n’a pas les droits nécessaires.
Tester avec le conteneur hello-world
Le test docker run hello-world télécharge une image minimale, démarre un conteneur et affiche un message de confirmation. C’est la preuve que la chaîne complète client, daemon et registre Docker fonctionne.
Si le message Hello from Docker! s’affiche, l’installation est pleinement opérationnelle. Une erreur de type permission denied sur le socket signale simplement que vous n’êtes pas encore membre du groupe docker, ce qui se corrige dans la configuration post-installation.
Vous pouvez ensuite enchaîner avec docker ps pour lister les conteneurs actifs, ou docker images pour afficher l’image hello-world récemment téléchargée et confirmer que le stockage local fonctionne lui aussi.
Désinstaller Docker Engine et nettoyer les données
Pour retirer Docker proprement, commencez par arrêter le service avec systemctl stop docker, puis systemctl disable docker afin qu’il ne redémarre pas au prochain boot. Avant toute suppression, nettoyez les ressources actives, conteneurs, images, volumes et réseaux, pour éviter des résidus volumineux dans /var/lib/docker.
Purgez ensuite les paquets installés : docker-ce, docker-ce-cli, containerd.io, ainsi que docker-buildx-plugin et docker-compose-plugin. Utilisez apt purge plutôt que remove, sinon les fichiers de configuration restent présents sur le système.
Supprimez enfin le répertoire /var/lib/docker, qui contient images, conteneurs et volumes. Si la désinstallation est définitive, effacez aussi le dépôt /etc/apt/sources.list.d/docker.sources et la clé /etc/apt/keyrings/docker.asc, puis lancez un apt update pour actualiser les sources.
Configurer l’accès Docker sans sudo via le groupe docker
Par défaut, seuls root et les commandes préfixées par sudo peuvent piloter Docker. Pour éviter cette contrainte à chaque commande, ajoutez votre utilisateur au groupe docker avec usermod -aG docker $USER.
La modification n’est pas active immédiatement : rechargez votre session avec newgrp docker ou déconnectez-vous puis reconnectez-vous. Sans cette étape, Docker renvoie une erreur permission denied sur le socket.
Attention toutefois : appartenir au groupe docker revient à disposer de privilèges équivalents à root. Un conteneur mal configuré peut monter des répertoires sensibles de l’hôte. Réservez cet accès aux utilisateurs de confiance, ou explorez la rootless mode pour un isolement renforcé.
Configuration post-installation : démarrage automatique et daemon.json
Par défaut, le service Docker est lancé à la fin de l’installation, mais il ne redémarre pas forcément au reboot. Pour garantir un démarrage automatique de la machine, activez le service avec systemctl enable docker. Si le démon n’est pas encore actif, lancez-le avec systemctl start docker puis vérifiez son état via systemctl status docker. Cette étape évite de relancer manuellement Docker après chaque redémarrage du serveur Debian 13.
Le fichier /etc/docker/daemon.json permet de centraliser les réglages persistants du démon. Il n’existe pas toujours par défaut : créez-le si nécessaire, puis redémarrez le service pour appliquer la configuration. L’option live-restore est particulièrement utile, car elle maintient les conteneurs en fonctionnement pendant une mise à jour du démon Docker.
Ce fichier accepte aussi la configuration des plages d’adresses, des registres privés ou des drivers de stockage. Modifiez-le avec précaution, car une erreur de syntaxe JSON empêche le démon de démarrer. Après chaque modification, validez le redémarrage avec systemctl restart docker et contrôlez les journaux en cas d’échec.
