Comment installer docker et docker-compose sur Ubuntu 26.04+ en 30 secondes

English Français

Note : Ceci est une version mise à jour de l’ancien guide How to install docker and docker-compose on Ubuntu in 30 seconds, adaptée pour Ubuntu 26.04+ en utilisant la configuration moderne du dépôt basée sur le keyring.

Utilisez notre script :

install_docker_compose.sh
wget -qO- https://techoverflow.net/scripts/install-docker-2026.sh | sudo bash /dev/stdin

Après cela, déconnectez-vous et reconnectez-vous (ou fermez votre session SSH et reconnectez-vous) (sinon, vous ne pourrez exécuter le client docker qu’en tant que root — voir Solving Docker permission denied while trying to connect to the Docker daemon socket)

Ou faites-le manuellement :

Copiez et collez ces blocs de commandes dans votre shell Linux. Vous devez copier et coller un bloc à la fois — vous pouvez coller le bloc suivant une fois que le bloc précédent est terminé !

install_prereqs.sh
# Installer les prérequis
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common gnupg
install_docker_cmds.sh
# Ajouter la clé de signature des paquets docker en utilisant le répertoire keyring moderne
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
sudo chmod a+r /etc/apt/keyrings/docker.gpg
# Ajouter le dépôt en utilisant la balise signed-by moderne
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Installer la dernière version stable de docker ainsi que les plugins CLI modernes
sudo apt-get update
sudo apt-get -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
install_docker_compose_steps.sh
# Installer le binaire autonome docker-compose v2
COMPOSE_VERSION=$(curl -s https://api.github.com/repos/docker/compose/releases/latest | grep -oP '"tag_name": "\K[^"]+')
sudo curl -L "https://github.com/docker/compose/releases/download/${COMPOSE_VERSION}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod a+x /usr/local/bin/docker-compose
# Activer et démarrer docker
sudo systemctl enable docker
sudo systemctl start docker

Notez que cela installera Docker en tant que paquet deb alors que docker-compose sera téléchargé dans /usr/local/bin. Le paquet docker-compose-plugin fournit également la sous-commande docker compose.

Si vous avez l’intention d’utiliser docker sous votre compte utilisateur normal (c’est-à-dire sans sudo), vous voudrez peut-être ajouter cet utilisateur au groupe docker (nous vous recommandons de le faire) :

add_user_docker.sh
sudo usermod -a -G docker $USER

Ce paramètre nécessite que vous vous déconnectiez et vous reconnectiez (ou que vous terminiez complètement votre session SSH et que vous ouvriez une nouvelle session SSH) afin de prendre effet.

Si cela ne fonctionne pas et que vous obtenez toujours des messages d’erreur permission denied, essayez de redémarrer votre ordinateur.

Pour vérifier si votre utilisateur est actuellement membre des groupes docker, exécutez

check-groups.sh
groups

Exemple de sortie :

groups_output.txt
uli adm tty lp uucp dialout cdrom sudo dip plugdev lpadmin sambashare vboxusers lxd docker

Ce sont les groupes auxquels votre utilisateur appartient actuellement (comme dit précédemment, les changements ne prennent effet qu’après s’être déconnecté et reconnecté, ou après avoir terminé et rouvert votre session SSH). Si docker est listé dans la sortie de groups (astuce : c’est généralement vers la fin au cas où vous venez de l’ajouter !), vous devriez pouvoir accéder au socket docker. Voir la section Background information de Solving Docker permission denied while trying to connect to the Docker daemon socket pour plus de détails sur les sockets docker et leurs permissions.


Check out similar posts by category: Container, Docker, Linux