VPS · Guide

Comment installer Docker sur Ubuntu

Mis à jour October 11, 2026 5 min de lecture

Sur cette page
  1. Avant de commencer
  2. Étape 1 : supprimer les paquets en conflit
  3. Étape 2 : ajouter le dépôt de Docker
  4. Étape 3 : installer Docker et Compose
  5. Étape 4 : permissions et rotation des logs
  6. Un premier fichier Compose
  7. Docker et ufw : le piège du pare-feu
  8. Docker sur un VPS HytHost
  9. FAQ

Docker exécute les applications dans des conteneurs : chacun embarque tout ce dont il a besoin, il fonctionne donc de la même façon sur votre portable et sur un serveur. Sites web, bases de données, bots et serveurs de jeu peuvent tous se lancer avec une seule commande ou un seul fichier Compose.

Ce guide installe Docker Engine et Docker Compose sur Ubuntu 24.04 ou 22.04 depuis le dépôt officiel de Docker, puis aborde les réglages qui comptent sur un vrai serveur : permissions, logs et pare-feu.

Avant de commencer

  • Une version d'Ubuntu prise en charge : Docker prend en charge les versions 64 bits d'Ubuntu 26.04, 24.04 et 22.04 LTS. Vérifiez la vôtre avec cat /etc/os-release.
  • Un serveur KVM, pas un conteneur : Docker a besoin de fonctionnalités propres au noyau. Il tourne sur n'importe quel VPS KVM, mais souvent pas sur les offres basées sur des conteneurs (OpenVZ ou LXC).
  • Root ou un utilisateur avec sudo. Les commandes ci-dessous utilisent sudo ; si vous êtes connecté en root, vous pouvez l'omettre.

Sur un serveur, évitez le paquet docker.io du dépôt d'Ubuntu ainsi que la version Snap : le dépôt de Docker reçoit les nouvelles versions en premier, et c'est celui qu'utilise la documentation officielle de Docker.

Docker a besoin d'une vraie machine virtuelle : les offres HytHost KVM VPS avec Ubuntu et accès root complet commencent à €2.92/mois.

Voir les offres VPS

Étape 1 : supprimer les paquets en conflit

Si vous avez déjà installé Docker depuis une autre source, supprimez d'abord ces paquets. Sur un serveur neuf, apt indique simplement qu'aucun n'est installé :

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

Les images et volumes dans /var/lib/docker/ ne sont pas supprimés par cette commande.

Étape 2 : ajouter le dépôt de Docker

Ces commandes, tirées de la documentation de Docker, ajoutent la clé de signature de Docker et son dépôt apt pour votre version d'Ubuntu :

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 3 : installer Docker et Compose

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

Cela installe Docker Engine, l'outil en ligne de commande, le builder Buildx et le plugin Compose. Vérifiez que tout fonctionne :

sudo docker run hello-world
docker compose version

La première commande télécharge une toute petite image de test et affiche un message de bienvenue. Sur Ubuntu, Docker démarre automatiquement au boot : il n'y a rien à activer.

Compose, c'est la commande docker compose, avec un espace. L'ancien docker-compose avec un tiret est la première version, abandonnée ; les guides qui l'utilisent encore fonctionnent aussi avec la nouvelle commande.

Étape 4 : permissions et rotation des logs

Lancer docker sans sudo. Ajoutez votre utilisateur au groupe docker, puis déconnectez-vous et reconnectez-vous :

sudo usermod -aG docker $USER

Attention : Docker lui-même prévient que ce groupe accorde des privilèges équivalents à root ; n'importe quel membre peut contrôler tout le serveur. N'y ajoutez que des utilisateurs à qui vous donneriez root.

Limiter la taille des logs. Par défaut, les logs des conteneurs grossissent sans limite et peuvent remplir le disque. Créez /etc/docker/daemon.json :

{
  "log-driver": "json-file",
  "log-opts": { "max-size": "10m", "max-file": "3" }
}

Puis lancez sudo systemctl restart docker. La limite s'applique aux conteneurs créés après la modification, recréez donc ceux qui existent déjà.

Un premier fichier Compose

Compose décrit vos conteneurs dans un seul fichier. Créez un dossier contenant un compose.yaml :

services:
  web:
    image: nginx:stable
    ports:
      - "127.0.0.1:8080:80"
    restart: unless-stopped

Démarrez-le avec docker compose up -d, vérifiez-le avec docker compose ps et lisez ses logs avec docker compose logs. restart: unless-stopped relance le conteneur après un crash ou un redémarrage. Le port est lié à 127.0.0.1 volontairement, comme l'explique la section suivante.

Docker et ufw : le piège du pare-feu

Presque tout le monde s'y fait prendre. Quand vous publiez un port, par exemple -p 8080:80, Docker ajoute ses propres règles de pare-feu, appliquées avant celles d'ufw. Le port est ouvert sur Internet même si ufw le dit fermé.

  • Liez les ports à localhost quand seul le serveur lui-même en a besoin, par exemple une base de données ou une application derrière un reverse proxy : 127.0.0.1:8080:80.
  • Ne publiez pas du tout les ports des bases de données ; laissez plutôt les conteneurs communiquer entre eux via un réseau Docker.
  • Pour filtrer par adresse source, ajoutez des règles à la chaîne iptables DOCKER-USER, que Docker consulte avant les siennes.

C'est pareil pour les serveurs de jeu lancés dans Docker ; voir comment configurer un VPS pour des serveurs de jeu.

Docker sur un VPS HytHost

Les offres VPS HytHost tournent sur KVM : chaque VPS a son propre noyau et Docker fonctionne sans restriction. Choisissez Ubuntu 24.04 ou 22.04 à la commande, connectez-vous en SSH et suivez les étapes ci-dessus. Vous disposez d'un accès root complet, d'un stockage SSD et d'une protection DDoS, et vous pouvez passer plus tard à une offre supérieure à mesure que vos conteneurs se multiplient.

FAQ

Questions fréquentes

Docker prend en charge les versions 64 bits d'Ubuntu 26.04, 24.04 et 22.04 LTS. Les autres systèmes basés sur Ubuntu, comme Linux Mint, ne sont pas officiellement pris en charge.

Pas sur un serveur de production. Docker indique que son script de commodité est destiné aux environnements de développement et n'est pas recommandé en production ; il peut aussi passer à une nouvelle version majeure. Utilisez plutôt la méthode par dépôt.

docker-compose avec un tiret est l'ancienne version, abandonnée. Aujourd'hui, Compose est un plugin Docker utilisé sous la forme docker compose et installé avec le paquet docker-compose-plugin.

Les ports publiés par Docker contournent ufw. Liez le port à 127.0.0.1 s'il doit rester local, ou filtrez-le dans la chaîne DOCKER-USER.

Sur un VPS KVM, oui. Les offres VPS basées sur des conteneurs, comme OpenVZ, ne peuvent souvent pas faire tourner Docker ou nécessitent des réglages spéciaux de la part de l'hébergeur.

Faites tourner vos conteneurs sur un VPS

Les offres HytHost KVM VPS font tourner Docker sans restriction, avec accès root complet et Ubuntu 24.04, dès €2.92/mois.

Live chat 8 AM – 11 PM (Chișinău time) · tickets answered during business hours

Ce guide vous a-t-il été utile ?