Installer Docker sur Linux permet d’exécuter des applications dans des conteneurs isolés sans installer directement toutes leurs dépendances sur le système. Ce guide présente des procédures prêtes à copier pour Ubuntu, Debian, Fedora, Arch Linux et openSUSE, puis explique comment vérifier Docker Compose, utiliser Docker sans sudo, lancer un premier conteneur et désinstaller proprement le moteur.
L’essentiel
Commande clé : sudo docker run hello-world — le test qui valide l’installation.
Prérequis : un compte avec sudo, une distribution maintenue, de l’espace disque.
Portée : Ubuntu, Debian, Fedora, Arch Linux et openSUSE, via les dépôts officiels Docker.
Sources : documentation officielle des projets cités, consultée le 20 juillet 2026.
Qu’est-ce que Docker et pourquoi l’installer sur Linux ?
Docker est une plateforme de conteneurisation. Une image regroupe une application et ses dépendances ; un conteneur exécute cette image dans un environnement isolé. Contrairement à une machine virtuelle complète, un conteneur partage le noyau Linux de l’hôte, ce qui réduit généralement le temps de démarrage et la consommation de ressources.
Docker Engine comprend notamment le démon dockerd, le client en ligne de commande docker et le moteur d’exécution containerd. Buildx ajoute les fonctions de construction avancées et Docker Compose orchestre plusieurs services à partir d’un fichier YAML. Selon la distribution et la méthode choisie, ces composants sont fournis dans plusieurs paquets distincts.
Installer Docker sur Linux : prérequis indispensables
Avant d’installer Docker sur Linux, prévoyez un compte disposant de sudo, une distribution maintenue et suffisamment de stockage pour les images et les volumes. Docker Engine prend en charge plusieurs architectures selon la distribution, notamment AMD64, ARM64 et, dans certains cas, ARM 32 bits. Vérifiez la matrice de compatibilité dans la documentation officielle de Docker Engine.
Sur Ubuntu et Debian, ce guide utilise le dépôt officiel de Docker. Le paquet docker.io des dépôts de la distribution fournit bien Docker, mais sa version et son découpage peuvent différer. Le paquet distinct podman-docker fournit une interface compatible avec la commande docker tout en s’appuyant sur Podman. Ne mélangez pas ces sources sur une même installation.
Installer Docker sur Ubuntu 24.04 et 26.04 LTS
Pour installer Docker sur Linux avec Ubuntu, la procédure suivante correspond au dépôt APT officiel décrit dans la documentation Docker pour Ubuntu.
Étape 1 : retirer les paquets en conflit
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc | cut -f1)
apt peut simplement indiquer qu’aucun de ces paquets n’est installé. Les images, conteneurs et volumes déjà présents dans /var/lib/docker/ ne sont pas supprimés par cette commande.
Étape 2 : ajouter la clé et le dépôt officiels
sudo apt update
sudo apt install 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
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
Le marqueur final EOF doit être copié lui aussi. Il ferme le bloc qui écrit le fichier /etc/apt/sources.list.d/docker.sources. Le second apt update charge ensuite le nouveau dépôt.
Étape 3 : installer et tester Docker
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run hello-world
Le message « Hello from Docker! » confirme que le client communique avec le démon, que l’image de test a été téléchargée et que le conteneur s’est exécuté correctement.
Installer Docker sur Debian 13 Trixie
Pour installer Docker sur Linux avec Debian, la méthode utilise la même logique, avec l’URL et le nom de code de Debian. Elle suit la procédure officielle Docker pour Debian.
sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-doc podman-docker containerd runc | cut -f1)
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run hello-world
Sur Debian 13, VERSION_CODENAME doit renvoyer trixie. Sur une distribution dérivée ou une branche de test, vérifiez le nom de code compatible avant de créer le dépôt.
docker --version
docker compose version
Ces commandes affichent les versions réellement installées. Il est préférable de ne pas inscrire un numéro de version fixe dans un tutoriel, car la branche stable évolue régulièrement.
Installer Docker sur Fedora
Pour installer Docker sur Linux avec Fedora, la distribution utilise DNF 5. La première commande retire les anciens paquets susceptibles d’entrer en conflit ; elle peut indiquer qu’aucun paquet correspondant n’est installé. La suite ajoute le dépôt et installe Docker conformément à la documentation officielle pour Fedora.
sudo dnf remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
sudo dnf config-manager addrepo --from-repofile https://download.docker.com/linux/fedora/docker-ce.repo
sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
sudo systemctl enable --now docker
sudo docker run hello-world
Lors de la première installation, DNF peut demander de valider la clé GPG du dépôt. Vérifiez l’empreinte affichée avec celle publiée dans la documentation Docker avant de l’accepter.
Installer Docker sur Arch Linux et openSUSE
Sur Arch Linux
Arch Linux fournit Docker, Buildx et Compose dans son dépôt officiel extra. La mise à niveau complète évite une installation partielle non prise en charge.
sudo pacman -Syu docker docker-buildx docker-compose
sudo systemctl enable --now docker
sudo docker run hello-world
Sur openSUSE Tumbleweed
Tumbleweed propose actuellement Docker, Buildx et Docker Compose dans ses dépôts officiels. Installez-les puis activez le service :
sudo zypper install docker docker-buildx docker-compose
sudo systemctl enable --now docker
sudo docker run hello-world
Tumbleweed est une distribution rolling release. Sa mise à niveau complète s’effectue avec :
sudo zypper dup
Sur openSUSE Leap
La disponibilité de Docker et de Compose varie selon la version de Leap. La page openSUSE Software consacrée à Docker indique notamment qu’aucun paquet officiel n’est actuellement fourni pour Leap 16.0, tandis que le projet Virtualization:containers propose des paquets expérimentaux. Vérifiez donc la source et le niveau de confiance avant d’ajouter un dépôt tiers.
zypper info docker
zypper info docker-compose
Si votre version de Leap fournit les paquets dans un dépôt déjà activé, installez-les puis démarrez Docker :
sudo zypper install docker docker-compose
sudo systemctl enable --now docker
sudo docker run hello-world
Pour mettre Leap à jour sans effectuer une migration de distribution :
sudo zypper up
Utiliser Docker sans sudo
Pour exécuter la commande docker sans sudo, ajoutez votre compte au groupe docker, puis ouvrez une nouvelle session :
sudo usermod -aG docker "$USER"
newgrp docker
docker run hello-world
Le groupe docker accorde des privilèges comparables à ceux de root. N’y ajoutez que des comptes de confiance. Pour un environnement où ce niveau d’accès n’est pas acceptable, étudiez le mode rootless décrit dans les étapes post-installation officielles. Sur un serveur distant, pensez également à sécuriser l’accès SSH.
Vérifier Docker Compose et lancer un premier conteneur
Sur un serveur distant, sécurisez l’accès avant d’exposer le moindre conteneur : notre guide pour configurer SSH sur Linux couvre les clés, le pare-feu et fail2ban.
Compose V2 utilise la commande docker compose, avec une espace. Certains gestionnaires de paquets conservent toutefois le nom de paquet docker-compose sans pour autant installer l’ancien programme Compose V1 en Python.
docker compose version
Pour tester un serveur Nginx uniquement depuis la machine locale, liez le port au loopback :
docker run -d -p 127.0.0.1:8080:80 --name mon-nginx nginx
Ouvrez http://127.0.0.1:8080. L’adresse 127.0.0.1 évite d’exposer involontairement le service au réseau. Une publication de type -p 8080:80 écoute par défaut sur toutes les interfaces et peut interagir de manière inattendue avec les règles UFW. Une fois le test terminé :
docker rm -f mon-nginx
Erreurs courantes et solutions
Permission denied sur /var/run/docker.sock
Reconnectez-vous après l’ajout au groupe docker, ou exécutez newgrp docker. Vérifiez ensuite les groupes de la session avec id -nG. N’assouplissez pas les permissions de /var/run/docker.sock avec un chmod 666 : cela donnerait un accès privilégié à tous les utilisateurs locaux.
Erreur GPG ou dépôt introuvable
Sur Ubuntu et Debian, vérifiez l’existence et la lisibilité de /etc/apt/keyrings/docker.asc, puis relancez sudo apt update. Contrôlez également le contenu de /etc/apt/sources.list.d/docker.sources et le nom de code renvoyé par /etc/os-release. Sur Fedora, vérifiez la connexion et le fichier de dépôt avant de relancer la commande dnf config-manager addrepo.
Le service Docker ne démarre pas
sudo systemctl status docker --no-pager
sudo journalctl -u docker --no-pager -n 50
Pour isoler une erreur précise dans une sortie longue, filtrez-la avec la commande grep. Les journaux indiquent généralement la cause exacte : paquet en conflit, erreur de configuration, stockage saturé ou problème de réseau. Corrigez l’erreur signalée plutôt que de supprimer immédiatement les données Docker.
Désinstaller Docker proprement
Sur Ubuntu et Debian, désinstallez d’abord les logiciels et retirez les fichiers du dépôt. Cette étape conserve les images, conteneurs et volumes :
sudo apt purge docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
sudo rm -f /etc/apt/sources.list.d/docker.sources /etc/apt/keyrings/docker.asc
sudo apt update
Sur Fedora :
sudo dnf remove docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-ce-rootless-extras
Sur Arch Linux :
sudo pacman -Rns docker docker-buildx docker-compose
Sur openSUSE, adaptez la liste aux paquets réellement installés :
sudo zypper remove docker docker-buildx docker-compose
Suppression facultative et irréversible : la commande suivante efface les images, conteneurs, volumes et métadonnées locales stockés dans les emplacements standards. Exécutez-la uniquement après avoir sauvegardé les données nécessaires, par exemple en suivant les principes de notre guide sur les sauvegardes avec rsync et crontab.
sudo rm -rf /var/lib/docker /var/lib/containerd
Conclusion
Installer Docker sur Linux reste simple lorsque le dépôt et les paquets correspondent exactement à la distribution utilisée. Après l’installation, vérifiez le service avec systemctl, testez-le avec hello-world et contrôlez Docker Compose avant de lancer vos propres conteneurs. L’ajout au groupe docker facilite l’utilisation sans sudo, mais accorde des privilèges élevés : réservez-le aux utilisateurs de confiance. Maintenez enfin Docker et ses images à jour, sauvegardez les volumes importants et consultez les journaux du service en cas d’échec.
Questions fréquentes
Docker est-il gratuit sur Linux ?
Docker Engine, le client et Docker Compose sont open source et utilisables gratuitement. Docker Desktop existe également pour Linux, Windows et macOS. Son usage commercial dans certaines grandes organisations nécessite un abonnement selon les conditions de licence de Docker.
Quelle distribution propose Docker le plus rapidement ?
Arch Linux et openSUSE Tumbleweed distribuent généralement des versions récentes via leur modèle rolling release. Ubuntu, Debian et Fedora suivent le dépôt officiel Docker configuré dans ce guide. La version exacte dépend toutefois de la date de synchronisation des dépôts : vérifiez-la avec docker --version.
Quelle différence entre Docker et Podman ?
Podman fonctionne sans démon central et peut être utilisé en mode rootless, tandis que Docker Engine repose généralement sur dockerd. Les deux utilisent des images conformes aux standards OCI. Sur Ubuntu, docker.io fournit Docker ; le paquet distinct podman-docker redirige une interface compatible avec la commande Docker vers Podman.
Faut-il une machine virtuelle sur Linux ?
Docker Engine s’exécute directement sur le noyau Linux et ne nécessite pas de machine virtuelle. Docker Desktop pour Linux existe également, mais il utilise une machine virtuelle et un contexte Docker séparé afin de fournir une interface graphique et un environnement isolé.
Peut-on installer Docker sur un Raspberry Pi ?
Oui. Docker fournit des paquets pour ARM64 et prend également en charge ARM 32 bits sur certaines plateformes, dont Raspberry Pi OS. Utilisez la procédure correspondant au système réellement installé et vérifiez l’architecture avec dpkg --print-architecture ou uname -m.
Comment mettre Docker à jour ?
Utilisez la mise à jour normale de la distribution : sudo apt update && sudo apt upgrade sur Ubuntu et Debian, sudo dnf upgrade sur Fedora, sudo pacman -Syu sur Arch Linux, sudo zypper up sur openSUSE Leap et sudo zypper dup sur Tumbleweed. Consultez les notes de version avant une montée de version majeure sur un serveur de production.
Dernière vérification des commandes et des procédures : 20 juillet 2026, d’après la documentation officielle des projets et distributions cités.