Comment installer Docker sur Ubuntu 22.04 ?

Introduction

Cette page explique comment installer Docker sur Ubuntu 22.04. Docker est une technologie de conteneurisation. Docker permet d'exécuter des applications isolées dans un conteneur, encapsulé avec toutes ses dépendances et bibliothèques. Cela facilite le déploiement et l'exécution des applications, car tout ce qui est nécessaire à l'exécution de l'application est inclus dans le conteneur. Avec Docker, vous pouvez exécuter n'importe quelle version de distributions Linux, d'applications et de services tels que des serveurs web, des systèmes de gestion de bases de données, des langages de programmation...

Ce qui suit a été testé avec ces versions :

Mise à jour du système

Avant d'installer Docker, commencez par mettre à jour votre système avec la commande suivante :

sudo apt update -y && sudo apt upgrade -y

Supprimer les anciennes versions

N'utilisez pas apt install docker car la version dans les dépôts n'est pas nécessairement la dernière. Supprimer les anciennes versions de Docker avant avec la commande suivante :

sudo apt-get remove docker docker.io containerd runc

La sortie devrait ressembler à ça et confirmer que docker n'est plus installé.

Package 'docker' is not installed, so not removed
Package 'docker.io' is not installed, so not removed
Package 'containerd' is not installed, so not removed
Package 'runc' is not installed, so not removed
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

Set up repository

Avant d'installer Docker, nous devons installer le dépôt Docker. Commençons par installer les paquets suivants :

sudo apt-get install ca-certificates curl gnupg lsb-release

Créez un dossier pour télécharger la clé GPG officielle de Docker :

sudo mkdir -p /etc/apt/keyrings

Téléchargez la clé :

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

Enfin, configurez le dépôt avec la commande suivante :

echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Mise à jour de l'index du gestionnaire de paquet :

sudo apt update

Vous devriez voir les lignes suivantes en sortie de la dernière commande. Elles confirment que le dépôt Docker a été correctement ajouté.

Get:3 https://download.docker.com/linux/ubuntu jammy InRelease [48,9 kB]                                
Get:6 https://download.docker.com/linux/ubuntu jammy/stable amd64 Packages [11,1 kB]

Installer Docker

Maintenant que le dépôt est ajouté, il suffit d'installer docker avec la commande suivante :

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

Vérifiez que docker fonctionne correctement en exécutant l'image hello-world :

sudo docker run hello-world

Cette commande télécharge l'image et l'exécute dans un conteneur. Le conteneur affiche un message de confirmation et s'arrête :

$ sudo docker run hello-world
Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
2db29710123e: Pull complete 
Digest: sha256:c77be1d3a47d0caf71a82dd893ee61ce01f32fc758031a6ec4cf1389248bb833
Status: Downloaded newer image for hello-world:latest

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:

Docker est installé et fonctionne correctement.

Vous pouvez également vérifier la version installée avec docker -v :

$ docker -v
Docker version 20.10.22, build 3a2c30b

Exécuter sans sudo

Vous avez probablement remarqué que l'image de test hello-world a été lancée avec les privilèges administrateur. Le démon Docker s'exécute toujours sous l'utilisateur root. Pour exécuter docker en tant qu'utilisateur non-root, créez un groupe nommé docker :

sudo groupadd docker

Ajouter l'utilisateur actuel au groupe docker :

sudo usermod -aG docker $USER

Redémarrez la machine pour activer les changements. Dans certains cas, se déconnecter et se reconnecter peut suffire.

Vérifiez que docker peut être exécuté sans privilèges :

docker run hello-world

Et voilà!

Voir aussi


Dernière mise à jour : 28/12/2022