Installer Docker sur Linux
DOG&DEV · 25/01/2025
Installer Docker sur Linux
Docker permet d’exécuter des applications dans des conteneurs. Ce guide décrit l’installation de Docker Engine et Docker Compose sur Debian/Ubuntu via le dépôt officiel, puis des commandes de base pour vérifier le fonctionnement.
Prérequis
- Debian 11/12 ou Ubuntu 20.04/22.04 (64 bits)
- Accès root ou sudo
- Connexion Internet
Installation (dépôt officiel Docker)
1. Prérequis et anciens paquets
sudo apt update
sudo apt install ca-certificates curl gnupg
sudo apt remove docker docker-engine docker.io containerd runc 2>/dev/null
2. Clé GPG et dépôt
sudo install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
sudo chmod a+r /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
Pour Ubuntu, remplacer debian par ubuntu dans l’URL :
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
3. Installation des paquets
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
4. Démarrer et activer
sudo systemctl enable docker
sudo systemctl start docker
sudo systemctl status docker
5. Utilisateur sans sudo (optionnel)
Pour lancer docker sans sudo :
sudo usermod -aG docker $USER
Déconnectez-vous puis reconnectez-vous (ou newgrp docker) pour que le groupe soit pris en compte.
Vérification : hello-world
sudo docker run hello-world
Un message indique que Docker fonctionne correctement.
Docker Compose (plugin)
Le plugin docker-compose est installé avec les paquets ci-dessus. Utilisation :
docker compose version
Exemple de docker-compose.yml :
services:
web:
image: nginx:alpine
ports:
- "8080:80"
Lancer : docker compose up -d.
L’ancien binaire docker-compose (avec tiret) peut être installé à part si un script ou une doc l’exige :
sudo apt install docker-compose-plugin
# La commande est : docker compose
Dépannage
| Symptôme | Cause possible | Correctif |
|---|---|---|
| « Cannot connect to Docker daemon » | Service non démarré, droits | systemctl start docker ; usermod -aG docker $USER et se reconnecter |
| Erreur de téléchargement d’image | DNS, réseau, registry | Vérifier /etc/resolv.conf ; docker pull avec un miroir ou VPN si blocage |
| Port déjà utilisé | Un service écoute sur le même port | Changer le mapping -p ou ports: ; ss -tlnp pour voir ce qui écoute |
Bonnes pratiques
- Ne pas lancer les conteneurs en root à l’intérieur quand ce n’est pas nécessaire.
- Utiliser des images officielles ou de confiance ; faire des mises à jour régulières.
- Pour Pterodactyl Wings : install-pterodactyl-auto ; pour Mailcow : mailcow-debian ; pour Jellyfin en conteneur : installation-jellyfin-linux.
Ressources
Cet article s’inscrit dans notre série de guides hébergement et gaming. Pour un serveur sur-mesure, contact.