Accueil/Documentation/VPS & Debian/Comment installer Docker et Docker Compose sur Debian/Ubuntu
VPS & DebianDifficulté : Facile7 min de lecture

Comment installer Docker et Docker Compose sur Debian/Ubuntu

Introduction

Docker est devenu l'outil de référence pour déployer des applications dans des conteneurs légers, isolés et reproductibles. Que vous hébergiez un bot, une application Node.js, une base de données ou une pile complète, Docker simplifie radicalement la gestion de vos services sur un VPS. Ce guide vous montre comment installer Docker Engine et le plugin Docker Compose v2 depuis les dépôts officiels de Docker (et non ceux, souvent obsolètes, de Debian/Ubuntu) sur un serveur Debian 11/12 ou Ubuntu 20.04/22.04/24.04.

1

1. Installer les prérequis et la clé GPG officielle

Commencez par mettre à jour vos paquets puis installez les outils nécessaires pour ajouter un dépôt sécurisé. Ajoutez ensuite la clé GPG officielle de Docker pour authentifier les paquets téléchargés.

terminal - bash
sudo apt update
sudo apt install -y ca-certificates curl gnupg

# Créer le dossier des clés et ajouter la clé GPG officielle Docker
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

Conseil important

Si vous êtes sur Ubuntu, remplacez simplement 'debian' par 'ubuntu' dans l'URL de la clé GPG ci-dessus.

2

2. Ajouter le dépôt officiel Docker

Déclarez le dépôt APT officiel de Docker. La commande détecte automatiquement l'architecture de votre processeur et le nom de code de votre distribution (bookworm, jammy, noble...).

terminal - bash
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

# Rafraîchir la liste des paquets
sudo apt update

Conseil important

Là encore, sur Ubuntu, remplacez '/linux/debian' par '/linux/ubuntu' dans l'URL du dépôt.

3

3. Installer Docker Engine et Docker Compose

Installez le moteur Docker, son interface en ligne de commande, le runtime containerd ainsi que les plugins Buildx et Compose v2 (intégré directement à la commande docker).

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

# Activer Docker au démarrage du serveur
sudo systemctl enable --now docker

Conseil important

Docker Compose v2 s'utilise désormais via la commande 'docker compose' (avec un espace) et non plus 'docker-compose' (avec un tiret).

4

4. Vérifier l'installation

Lancez le conteneur de test officiel 'hello-world'. S'il s'exécute et affiche un message de bienvenue, votre installation est fonctionnelle. Vérifiez également la version de Docker Compose.

terminal - bash
# Tester Docker
sudo docker run hello-world

# Vérifier les versions installées
sudo docker version
docker compose version

Conseil important

Le conteneur 'hello-world' télécharge une petite image depuis le Docker Hub, l'exécute, affiche un message puis se ferme automatiquement.

5

5. Utiliser Docker sans sudo (optionnel)

Par défaut, Docker nécessite les droits root. Pour exécuter les commandes 'docker' avec votre utilisateur courant sans taper 'sudo', ajoutez votre utilisateur au groupe 'docker'.

terminal - bash
# Ajouter votre utilisateur au groupe docker
sudo usermod -aG docker $USER

# Appliquer le changement (ou déconnectez-vous puis reconnectez-vous)
newgrp docker

# Tester sans sudo
docker run hello-world

Conseil important

Sécurité : le groupe 'docker' accorde des privilèges équivalents à root. Ne l'attribuez qu'à des utilisateurs de confiance.

6

6. Lancer une pile avec Docker Compose

Docker Compose permet de décrire et lancer plusieurs conteneurs via un simple fichier YAML. Créez un fichier 'compose.yaml' minimal puis démarrez-le en arrière-plan.

terminal - bash
mkdir ~/mon-app && cd ~/mon-app
nano compose.yaml

# Exemple de contenu (un serveur web Nginx) :
# services:
#   web:
#     image: nginx:latest
#     ports:
#       - "8080:80"
#     restart: unless-stopped

# Démarrer la pile en arrière-plan
docker compose up -d

# Voir les conteneurs actifs
docker compose ps

Conseil important

Votre serveur Nginx de test sera accessible sur 'http://VOTRE_IP:8080'. Arrêtez la pile avec 'docker compose down'.

En conclusion

Docker et Docker Compose sont maintenant opérationnels sur votre VPS. Vous pouvez déployer n'importe quelle application conteneurisée en quelques secondes, isoler vos services et reproduire vos environnements à l'identique. C'est la base idéale pour héberger des applications modernes sur votre serveur UnioHost.

Un VPS taillé pour Docker

SSD NVMe et RAM DDR4 ECC : l’environnement idéal pour vos conteneurs Docker, dès 5€/mois.

Voir les VPS NVMe

Foire Aux Questions (FAQ)

'docker-compose' (avec tiret) est l'ancienne version v1 écrite en Python, désormais obsolète. 'docker compose' (avec espace) est la version v2 intégrée nativement à Docker via le plugin docker-compose-plugin. Utilisez toujours la v2.
Ce n'est pas recommandé pour un serveur de production. Le paquet 'docker.io' des dépôts de la distribution est souvent en retard de plusieurs versions. Le dépôt officiel de Docker garantit les dernières mises à jour de sécurité et fonctionnalités.
Utilisez 'docker system prune -a' pour supprimer les conteneurs arrêtés, les images inutilisées et les caches de build. Ajoutez '--volumes' pour supprimer aussi les volumes orphelins (attention, cela efface des données).