Docker : bien l'installer et le garder propre
Avant de jouer avec les boites Docker, il faut un garage propre. Une mauvaise install, c'est des bugs bizarres, des droits qui bloquent tout, ou un WSL qui rale.
Tu as deja vu images et conteneurs ? Bien. Maintenant on installe Docker simplement sur Linux, macOS et Windows.
Linux (Ubuntu, Debian...)
Sur Linux, le plus sain : installer Docker Engine directement. Pas besoin de Docker Desktop.
Installation rapide (Ubuntu/Debian)
sudo apt update
sudo apt install ca-certificates curl gnupg
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
"deb [arch=\"$(dpkg --print-architecture)\" signed-by=/etc/apt/keyrings/docker.gpg] \
https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo \"$VERSION_CODENAME\") stable" \
| sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Ajouter ton utilisateur au groupe docker
Par defaut, il faut sudo pour tout. En dev, ca fatigue vite.
sudo usermod -aG docker "$USER"
newgrp docker
docker ps
Si docker ps marche sans sudo, c'est bon. Tu as les cles du garage.
macOS
Sur Mac, le plus simple reste Docker Desktop :
- telecharge depuis le site officiel,
- installe,
- verifie que
docker psmarche dans le terminal.
Avec Homebrew :
brew install --cask docker
Lance Docker depuis le Dock. Attends que le moteur demarre. Puis :
docker run hello-world
Si tu vois un message de succes, le garage est ouvert. Pour aller plus loin sans Desktop (licence, perf), il y a Colima ou Rancher Desktop - mais pour commencer, Desktop suffit.
Windows : passe par WSL2
Sous Windows, deux mondes :
- Docker Desktop qui utilise WSL2 sous le capot (WSL = un petit Linux dans Windows).
- Une install "pure" dans WSL2, comme sur un vrai Linux.
Pour du dev moderne : travaille dans WSL2.
Etapes rapides
- Active WSL2 et installe Ubuntu depuis le Microsoft Store.
- Dans Ubuntu, suis la procedure Linux ci-dessus.
- Verifie :
wsl -l -v # Ubuntu en version 2
docker ps # depuis Ubuntu
Tu es dans un environnement proche d'un serveur Linux. Le jour ou tu passes en prod, tu seras moins perdu.
Reglages utiles au quotidien
- Limiter les ressources (surtout sur laptop). Dans Docker Desktop : onglet Resources. Mets un plafond CPU/RAM raisonnable. Sinon ton PC devient une friteuse.
- Nettoyer regulierement :
docker ps -a
docker image ls
docker volume ls
docker system prune
prune, c'est le balai. Ca jette les boites et images inutiles. Attention : ca ne touche pas aux volumes nommes (tes donnees).
- Activer la completion shell (bash/zsh) pour taper
dockerplus vite.
Checklist
Coche ca, et tu es pret :
- [x]
docker pssans sudo (en dev) - [x]
docker run hello-worldOK - [x] Tu sais ou Docker tourne (Linux / WSL / Mac)
- [x] Tu as limite CPU/RAM sur ta machine principale
Ensuite : volumes et reseaux pour que tes conteneurs gardent des donnees et se parlent. Puis Docker Compose pour tout lancer d'une commande.