5.2 KiB
Installation
Docker repose sur plusieurs techniques implémentées dans les noyaux Linux
récents (et plus marginalement, Windows). Ces techniques, contrairement aux
instructions de virtualisation qui rendent les hyperviseurs attractifs, ne sont
pas limitées à une architecture de microprocesseur spécifique ; cependant la
communauté autour de Docker utilise principalement l'architecture amd64
,
c'est sur cette dernière que Docker pourra être exploité à son plein potentiel,
suivi de près par l'architecture arm64
.
Avant de continuer, assurez-vous que votre machine a bien démarré sur un noyau
64 bits. Le retour de la commande uname -m
doit vous indiquer :
Ou si vous êtes intrépide :
Assurez-vous également d'avoir un noyau récent, avec la commande uname -r
:
Rassurez-vous, même si vous n'avez pas compilé le dernier noyau disponible sur
kernel.org
, Docker s'utilise à partir de Linux 3.10.
Sous Linux, par le gestionnaire de paquets
En général, votre distribution mettra à votre disposition une version de Docker
plus ou moins récente. Sous Debian et ses dérivés (Ubuntu, Mint, ...) le paquet
a été nommé docker.io
.
Si dans un environnement de production, on préférera sans doute utiliser une version déjà bien éprouvée (comme celle des dépôts de sa distribution), pour bien suivre les exemples, nous allons avoir besoin de la dernière version disponible. Référez-vous à la documentation officielle correspondant à votre distribution :
https://docs.docker.com/engine/install/debian/
Sous Windows et macOS
Bien que les fonctionnalités de contenerisation de Docker que nous utiliserons ne soient disponibles que sous Linux, il est possible d'utiliser Docker de manière déportée : le daemon Docker tournera dans une machine virtuelle Linux, mais vous pourrez interagir avec lui via votre ligne de commande habituelle.
Téléchargez la version correspondant à votre système d'exploitation :
-
Docker Desktop for Mac :
https://hub.docker.com/editions/community/docker-ce-desktop-mac -
Docker Desktop for Windows :
https://hub.docker.com/editions/community/docker-ce-desktop-windows
Une fois l'installation terminée, lancez l'application : elle ajoutera une icône dans la zone de notification, vous permettant de contrôler l'exécution de la machine virtuelle sous-jacente.
::::: {.warning}
Depuis septembre 2021, ces applications sont passées sous une licence payante pour les grosses entreprises1. Cela ne vous concerne pas, car la licence est gratuite pour un usage éducatif ou personnel.
Notez que cela ne concerne pas le projet ou le binaire Docker : ceux-ci restent libres. Seules les applications Docker Desktop sont concernées.
:::::
Évaluation en ligne
Si vous rencontrez des difficultés pour vous lancer, le projet Play With Docker2 vous donne accès à un bac à sable dans lequel vous pourrez commencer à faire les exercices à suivre.
Il vous faudra disposer d'un compte Docker. Une fois identifié, vous pourrez créer une nouvelle instance, et vous connecter dessus via SSH.
Vérifier la bonne marche de l'installation
Vous devriez maintenant être capable de lancer la commande suivante :
Une sortie similaire au bloc suivant devrait apparaître sur votre écran :
Server: Engine: Version: 20.10.8 API version: 1.41 (minimum version 1.12) Go version: go1.16.6 Git commit: 75249d88bc Built: Wed Aug 4 12:55:42 2021 OS/Arch: linux/amd64 Experimental: true containerd: Version: 1.5.5 GitCommit: 72cec4be58a9eb6b2910f5d10f1c01ca47d231c0.m runc: Version: 1.0.2 GitCommit: v1.0.2-0-g52b36a2d docker-init: Version: 0.19.0 GitCommit: de40ad0
</div>
### Problèmes courants
#### `no such file or directory`?
Si vous avez cette erreur : `dial unix /var/run/docker.sock: no such file or
directory.`, le daemon n'est sans doute pas lancé. Lancez-le :
<div lang="en-US">
```bash
sudo service docker restart
permission denied
?
Si vous avez cette erreur : dial unix /var/run/docker.sock: permission denied.
, ajoutez votre utilisateur au groupe docker
et relancez votre
session :
::::: {.warning}
Cette action n'est pas anodine d'un point de vue de la sécurité :
https://docs.docker.com/engine/security/#docker-daemon-attack-surface
:::::
-
https://www.docker.com/blog/updating-product-subscriptions/ ↩︎
-
Play With Docker est accessible à cette adresse : https://labs.play-with-docker.com/ ↩︎