Aller au contenu
Tendances

Épisode 02 / 9Les bases35 min

Installer Docker

Sur Windows, WSL 2 puis Docker Desktop ; sur Ubuntu, Docker Engine depuis le dépôt officiel. Les deux chemins se rejoignent sur le même test : hello-world.

Vous êtes sur

Dans cet épisode

  • Vérifier que votre machine a ce qu’il faut avant d’installer quoi que ce soit
  • Installer Docker depuis sa source officielle, et nulle part ailleurs
  • Prouver que tout fonctionne avec un premier conteneur de test

Deux systèmes, deux méthodes d’installation. Le sélecteur en haut de page n’affiche que la vôtre ; les deux chemins se rejoignent à la fin pour le même test.

Étape 1 : vérifier le PC

Point à vérifierOù regarderCe qu’il faut
Version de WindowsTouche Windows + R, tapez winver, EntréeWindows 11 version 23H2 ou plus récente
VirtualisationGestionnaire des tâches (Ctrl + Maj + Échap), onglet Performances, Processeur« Virtualisation : Activé »
MémoireMême écran, rubrique Mémoire8 Go, le minimum indiqué par Docker

Les éditions Famille conviennent : elles font tourner les conteneurs Linux, les seuls utilisés dans cette formation. Windows 10 22H2 figure encore dans la documentation de Docker, mais Docker ne prend en charge que les versions de Windows toujours suivies par Microsoft : sur un PC resté sous Windows 10, vérifiez ce point avant de vous lancer.

Étape 2 : installer ou mettre à jour WSL 2

Ouvrez PowerShell (menu Démarrer, tapez « PowerShell ») et demandez d’abord l’état actuel :

wsl --version
  • Une version s’affiche : WSL est présent. Mettez-le à jour avec wsl --update. Docker demande au minimum la version 2.1.5.
  • Un message d’erreur ou une aide s’affiche : WSL est absent. Fermez PowerShell, rouvrez-le avec un clic droit, « Exécuter en tant qu’administrateur », puis lancez :
wsl --install

Redémarrez le PC quand Windows le demande. Au redémarrage, Ubuntu peut s’ouvrir tout seul pour sa première configuration : choisissez un nom d’utilisateur et un mot de passe Linux (rien ne s’affiche pendant la frappe du mot de passe, c’est normal). Cette petite installation d’Ubuntu n’est pas indispensable à Docker, mais elle ne gêne pas.

Étape 3 : installer Docker Desktop

  1. Téléchargez l’installeur uniquement depuis la page officielle de Docker. Un « Docker » trouvé sur un site de téléchargement tiers est à fuir.
  2. Lancez l’installeur et gardez l’option Use WSL 2 instead of Hyper-V.
  3. Gardez l’installation par utilisateur, proposée par défaut : Docker la recommande, et elle ne demande pas de droits administrateur pour les mises à jour.
  4. Au premier lancement, lisez puis acceptez les conditions d’utilisation. Créer un compte Docker est facultatif : aucun exercice n’en a besoin.
  5. Si une mise à jour est proposée, installez-la tout de suite.

Docker Desktop est gratuit pour un usage personnel. Seules les entreprises de plus de 250 salariés ou de plus de 10 millions de dollars de chiffre d’affaires doivent prendre un abonnement.

Étape 4 : attendre « Engine running »

Docker Desktop ouvert sur la page Containers, avec la mention Engine running en vert en bas à gauche

Tant que la mention Engine running n’apparaît pas en bas à gauche, aucune commande ne peut fonctionner. Le numéro en bas à droite est la version de Docker Desktop : le vôtre sera sans doute différent.

Profitez-en pour repérer le menu de gauche. Containers, Images, Volumes et Builds vous serviront à chaque épisode pour voir le résultat de vos commandes.

Étape 1 : identifier la machine

lsb_release -ds
dpkg --print-architecture

Docker prend en charge Ubuntu 22.04, 24.04 et 26.04 LTS, en 64 bits (amd64 ou arm64 le plus souvent). Les dérivées comme Linux Mint ne sont pas officiellement couvertes : ça peut fonctionner, mais cette procédure n’est pas garantie chez elles.

Étape 2 : chercher les paquets en conflit

Ubuntu propose ses propres paquets Docker, plus anciens, qui entrent en conflit avec ceux de Docker. Listez d’abord ce qui est installé :

dpkg -l | grep -E 'docker|containerd|runc|podman'

Si rien ne s’affiche, passez à l’étape suivante. Sinon, la commande officielle retire uniquement les paquets en conflit réellement présents :

sudo apt remove $(dpkg --get-selections docker.io docker-compose docker-compose-v2 docker-doc docker-buildx podman-docker containerd runc | cut -f1)

Une ancienne installation laisse ses images, conteneurs et volumes dans /var/lib/docker. Ce dossier n’est pas effacé par la désinstallation : ne le supprimez pas sans avoir vérifié qu’il ne contient rien d’utile.

Étape 3 : ajouter le dépôt officiel

La clé permet à APT de vérifier que chaque paquet vient bien de Docker ; le fichier docker.sources indique où les trouver, en détectant tout seul votre version d’Ubuntu et votre architecture.

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

Étape 4 : installer Docker Engine

Le moteur, le client, et les deux extensions dont la formation se sert : Buildx pour construire des images et Compose pour décrire des projets.

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

Sur Ubuntu, le service démarre tout seul. Vérifiez-le :

systemctl is-active docker

La réponse attendue est active. Docker propose aussi un script d’installation express : il le réserve lui-même aux environnements de test. Ici, chaque dépôt et chaque paquet restent visibles.

Étape 5 : garder sudo, ou rejoindre le groupe docker ?

Par défaut, seul l’administrateur peut piloter Docker : chaque commande commence par sudo. Ajouter votre compte au groupe docker évite de le taper, mais ce n’est pas un simple confort.

Garder sudoGroupe docker
Au quotidiensudo docker psdocker ps
Mot de passeDemandé régulièrementJamais
ConséquenceChaque élévation reste visibleVotre compte devient, en pratique, administrateur

Pour apprendre, gardez sudo : le rappel en haut de chaque épisode vous le redira. Si vous choisissez le groupe en connaissance de cause :

sudo usermod -aG docker $USER

Fermez ensuite votre session et reconnectez-vous pour que le changement s’applique.

Le test commun : hello-world

Sur les deux systèmes, deux commandes suffisent. La première doit afficher deux sections, Client et Server : si la seconde manque, le client ne parvient pas à joindre le moteur.

docker version

La seconde lance un vrai conteneur de test. L’option --rm le supprime tout seul dès qu’il a terminé.

docker run --rm hello-world

Lisez le message affiché : sous « Hello from Docker! », il raconte exactement ce qui vient de se passer, et c’est le schéma de l’épisode 1.

Étape annoncéeCe qu’elle signifie
Le client a contacté le moteurVotre commande est arrivée à Docker
Le moteur a téléchargé l’image depuis Docker HubLe registre fonctionne, votre machine a accès à Internet
Le moteur a créé un conteneur depuis l’imageL’image devient une exécution
Le moteur a renvoyé la sortie vers votre terminalLe texte que vous lisez vient du conteneur

Relancez la même commande : les lignes qui précédaient le message la première fois (« Unable to find image… », « Pulling from… ») ont disparu. L’image est déjà sur votre machine, Docker ne la télécharge plus.

Testez-vous

3 questions pour vérifier que l’essentiel est acquis. Rien n’est noté ni enregistré.

  1. Pourquoi Docker Desktop a-t-il besoin de WSL 2 sous Windows ?

  2. Sous Ubuntu, que donne l’appartenance au groupe docker ?

  3. Que prouve le message « Hello from Docker! » ?

Vérifier que tout fonctionne

Cochez au fur et à mesure : quand tout est coché, vous pouvez passer à la suite.

Problèmes courants

Windows : Docker Desktop signale que la virtualisation n’est pas disponible

Ouvrez le Gestionnaire des tâches, onglet Performances, puis Processeur : la ligne « Virtualisation » doit indiquer « Activé ». Sinon, activez-la dans l’UEFI (Intel VT-x, ou AMD-V, parfois appelé SVM) en suivant la documentation du fabricant de votre PC ou de votre carte mère.

Windows : Docker Desktop reste bloqué au démarrage

Lancez wsl --update dans PowerShell, redémarrez le PC, puis relancez Docker Desktop. Évitez « Reset to factory defaults » dans le menu de dépannage : cette remise à zéro efface toutes vos images, tous vos conteneurs et tous vos volumes.

Ubuntu : « permission denied while trying to connect to the Docker daemon socket »

Vous avez lancé docker sans sudo. Relancez la commande avec sudo devant — ou tapez simplement sudo !! : le terminal rejoue la dernière commande, avec sudo cette fois.

Ubuntu : « Unable to locate package docker-ce »

Le dépôt Docker n’est pas pris en compte. Affichez le fichier avec cat /etc/apt/sources.list.d/docker.sources, relancez sudo apt update et lisez les lignes d’erreur éventuelles : une faute de frappe dans ce fichier suffit.

« Cannot connect to the Docker daemon »

Le client fonctionne, mais le moteur ne répond pas. Sous Windows, démarrez Docker Desktop et attendez « Engine running ». Sous Ubuntu, lancez sudo systemctl start docker, puis vérifiez avec systemctl is-active docker.

Votre progression reste sur cet appareil, rien n’est envoyé.