Split Docker tutorials into basis, orchestration and dockerfiles
This commit is contained in:
parent
2d364556a2
commit
2c48fa7942
36 changed files with 477 additions and 188 deletions
122
tutorial/docker-basis/installation.md
Normal file
122
tutorial/docker-basis/installation.md
Normal file
|
|
@ -0,0 +1,122 @@
|
|||
\newpage
|
||||
|
||||
Installation
|
||||
============
|
||||
|
||||
## Prérequis
|
||||
|
||||
Docker repose sur plusieurs techniques implémentés dans les récents noyaux
|
||||
Linux. Nous consacrerons les prochains cours à comprendre leurs
|
||||
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'interface graphique, 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).[^versions]
|
||||
|
||||
[^versions]: 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/>
|
||||
|
||||
|
||||
## Évaluation en ligne
|
||||
|
||||
Si vous rencontrez des difficultés pour vous lancer, le projet
|
||||
[Play With Docker](https://play-with-docker.com/) 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
|
||||
```
|
||||
|
||||
### `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 :
|
||||
|
||||
```
|
||||
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 **relancer votre
|
||||
session** :
|
||||
|
||||
```
|
||||
sudo gpasswd -a $USER docker
|
||||
```
|
||||
|
||||
**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>
|
||||
Loading…
Add table
Add a link
Reference in a new issue