virli/tutorial/docker-basis/installation.md

3.9 KiB

\newpage

Installation

Prérequis

Docker repose sur plusieurs techniques implémentées dans les récents noyaux Linux. Nous consacrerons les prochains cours à comprendre leur fonctionnement. Ces techniques ne sont pas limitées à une architecture de microprocesseur spécifique (comme peuvent l'être les instructions de virtualisation nécessaire pour rendre les hyperviseurs attractifs) ; cependant la communauté autour de Docker utilisant principalement l'architecture amd64, c'est sur cette dernière que Docker pourra être exploité à son plein potentiel.

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 :

``` x86_64 ```

Assurez-vous également d'avoir un noyau récent, avec la commande uname -r :

``` 4.13.4-gentoo ```

Vous ne pourrez pas utiliser Docker avec un noyau antérieur à la version 3.10.

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, pour ce cours, 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/installation/linux/docker-ce/debian/

Versions de Docker

Historiquement, Docker est un projet open-source. Depuis peu, le business-model de la société a évolué et ils proposent désormais deux éditions : Community Edition et Enterprise Edition. La seconde est payante et possède un certain nombre d'atouts pour faciliter son adoption en entreprise (notamment pas mal d'interfaces graphiques, etc.). Le cœur de la technologie est quant à lui entièrement présent dans l'édition communautaire.

Depuis mars dernier, les numéros de version de Docker sont tirés de l'année et du mois de parution (comme on a l'habitude avec Ubuntu 16.04 par exemple). Le rythme actuel de parution est d'une version par trimestre (mars, juin, septembre, décembre).1

Évaluation en ligne

Si vous rencontrez des difficultés pour vous lancer, le projet Play With Docker vous donne accès à un bac à sable dans lequel vous pourrez commencer à faire ce TP.

Vérifier la bonne marche de l'installation

Vous devriez maintenant être capable de lancer la commande suivante :

``` docker version ```

Une sortie similaire au bloc suivant devrait apparaître sur votre écran :

``` Client: Version: 17.09.0-ce API version: 1.32 Go version: go1.9 Git commit: cec0b72 Built: Thu Sep 14 19:57:50 2017 OS/Arch: linux/amd64

Server: Version: 17.09.0-ce API version: 1.32 (minimum version 1.12) Go version: go1.9 Git commit: cec0b72 Built: Thu Sep 14 21:50:58 2017 OS/Arch: linux/amd64 Experimental: false

</div>

### `no such file or directory`?

Si vous avez cette erreur : `dial unix /var/run/docker.sock: no such file or
directory.`, le deamon n'est sans doute pas lancé. Lancez-le :

<div lang="en-US">

sudo service docker restart

</div>


### `permission denied`?

Si vous avez cette erreur : `dial unix /var/run/docker.sock: permission
denied.`, ajoutez votre utilisateur au groupe `docker` et **relancer votre
session** :

<div lang="en-US">

sudo gpasswd -a $USER docker

</div>

**Attention :** cette action n'est pas anodine d'un point de vue sécurité :
<https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface>

  1. Tous les détails sur les versions (CE/EE et numérotation, fréquences, ...) sont résumés dans cette annonce : https://blog.docker.com/2017/03/docker-enterprise-edition/ ↩︎