Installer Docker et Docker Compose sur un VPS Linux
Guide complet pour installer Docker et Docker Compose sur un VPS Linux Lordhosting : dépôt officiel, exécution sans sudo, premier docker-compose.yml et déploiement de Portainer.
Docker est devenu l'outil standard pour déployer des applications de façon isolée et reproductible : un serveur de jeu, une base de données, un bot Discord ou un panel comme Pterodactyl tiennent chacun dans leur conteneur, sans polluer le système hôte. Ce guide installe Docker Engine et Docker Compose sur un VPS Debian ou Ubuntu depuis le dépôt officiel, puis déploie un premier conteneur pour valider le tout.
⚙️ Prérequis
- Un VPS Lordhosting en KVM (Debian 11/12 ou Ubuntu 22.04/24.04 recommandé)
- Un accès SSH avec un utilisateur disposant des droits
sudo - Idéalement, un VPS déjà durci — voir notre guide Sécuriser un VPS Linux
⚙️ 1. Mettre à jour le système
Commencez toujours par patcher les paquets et installer les dépendances nécessaires au dépôt Docker :
sudo apt update && sudo apt upgrade -y
sudo apt install -y ca-certificates curl gnupg
⚙️ 2. Ajouter le dépôt officiel Docker
Le dépôt officiel garantit une version à jour, contrairement au paquet docker.io des dépôts Debian souvent en retard. Ajoutez la clé GPG :
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
Les commandes ci-dessus visent Debian. Sur Ubuntu, remplacez debian par ubuntu dans l'URL de la clé GPG et dans la ligne du dépôt ci-dessous. Le reste est identique.
Ajoutez ensuite le dépôt à vos sources APT :
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
⚙️ 3. Installer Docker Engine et Compose
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Le paquet docker-compose-plugin apporte la commande moderne docker compose (en deux mots), inutile d'installer quoi que ce soit d'autre.
⚙️ 4. Vérifier l'installation
sudo docker run hello-world
docker compose version
Si hello-world affiche son message de bienvenue et que la version de Compose s'affiche, Docker est opérationnel.
⚙️ 5. Exécuter Docker sans sudo (optionnel)
Pour éviter de taper sudo à chaque commande, ajoutez votre utilisateur au groupe docker :
sudo usermod -aG docker $USER
Déconnectez-vous puis reconnectez-vous (ou lancez newgrp docker) pour que le changement prenne effet.
Tout membre du groupe docker peut obtenir un accès root sur la machine. N'y ajoutez que des utilisateurs de confiance.
⚙️ 6. Votre premier docker-compose.yml
Compose décrit une pile complète dans un seul fichier. Créez un dossier et un fichier :
mkdir ~/portainer && cd ~/portainer
nano docker-compose.yml
Collez cet exemple qui déploie Portainer, une interface web pour gérer vos conteneurs à la souris :
services:
portainer:
image: portainer/portainer-ce:latest
container_name: portainer
restart: unless-stopped
ports:
- "9443:9443"
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
volumes:
portainer_data:
Lancez la pile :
docker compose up -d
Portainer est accessible sur https://votre_ip:9443. Pensez à ouvrir le port correspondant dans votre firewall :
sudo ufw allow 9443/tcp
⚙️ 7. Commandes Docker essentielles
docker ps # conteneurs en cours d'exécution
docker ps -a # tous les conteneurs, même arrêtés
docker logs -f <nom> # suivre les logs d'un conteneur
docker compose up -d # démarrer une pile en arrière-plan
docker compose down # arrêter et supprimer la pile
docker compose pull # mettre à jour les images
docker exec -it <nom> bash # ouvrir un shell dans un conteneur
⚙️ 8. Entretien et nettoyage
Les images et volumes inutilisés s'accumulent et remplissent le disque. Un nettoyage périodique s'impose :
docker system df # voir l'espace occupé par Docker
docker system prune -a # supprimer images, conteneurs et réseaux inutilisés
docker system prune -a supprime toutes les images non utilisées par un conteneur actif. Vérifiez qu'aucune pile arrêtée mais utile n'en dépend avant de lancer la commande.
✅ Conclusion
Vous disposez maintenant d'un VPS prêt à faire tourner n'importe quelle application conteneurisée : Docker Engine à jour, Compose intégré, exécution sans sudo et une première pile Portainer pour piloter le tout. La suite logique est d'installer un panel de jeu comme Pterodactyl ou de déployer vos propres services — chacun dans son conteneur, proprement isolé.
Pas encore de serveur pour héberger vos conteneurs ? Découvrez nos VPS Ryzen hautes performances en KVM, livrés en quelques minutes avec accès root complet.
❗Toujours bon à savoir

