Update 2018

This commit is contained in:
nemunaire 2018-10-03 10:56:13 +02:00
parent 07d7a79529
commit 3318c044f4
7 changed files with 46 additions and 51 deletions

View file

@ -16,7 +16,7 @@ l'option `--rm`.
## Conteneurs
Vous pouvez afficher l'ensemble des conteneurs, quelque soit leur état (en
Nous pouvons afficher l'ensemble des conteneurs, quelque soit leur état (en
cours d'exécution, arrêtés, ...) avec la commande suivante :
<div lang="en-US">

View file

@ -6,10 +6,11 @@ Projet et rendu
## Projet
Écrivez un script `mycloud-run.sh` pour automatiser le lancement de votre
instance personnelle d'`owncloud`. Une attention particulière devra être
apportée à la manière dont vous gérerez le rappel du script pour éventuellement
relancer un conteneur qui se serait arrêté (évidemment sans perdre les
données).
instance personnelle [`nextcloud`](https://hub.docker.com/_/nextcloud/) ou
d'[`owncloud`](https://hub.docker.com/r/owncloud/server/). Une attention
particulière devra être apportée à la manière dont vous gérerez le rappel du
script pour éventuellement relancer un conteneur qui se serait arrêté
(évidemment sans perdre les données).
À la fin de son exécution, le script affichera un lien utilisable sur l'hôte
pour se rendre sur la page de connexion. Une autre machine de votre réseau
@ -34,6 +35,20 @@ l'hôte par exemple, etc.) et la plus respectueuse des bonnes pratiques que l'on
a pu voir durant ce premier cours.
### Exemple d'exécution
<div lang="en-US">
```
42sh$ ./mycloud-run.sh
http://localhost:12345/
42sh$ #docker kill db
42sh$ ./mycloud-run.sh # le script relancera une base de données,
# sans avoir perdu les données
http://localhost:12345/
```
</div>
## Modalité de rendu
Un service automatique s'occupe de réceptionner vos rendus, de faire des
@ -46,7 +61,7 @@ envoyé à une autre adresse et/ou non signé et/ou reçu après la correction n
sera pas pris en compte.
Par ailleurs, n'oubliez pas de répondre à
[l'évaluation du cours](https://www.epitaf.fr/moodle/mod/quiz/view.php?id=20).
[l'évaluation du cours](https://www.epitaf.fr/moodle/mod/quiz/view.php?id=213).
## Tarball
@ -58,11 +73,8 @@ Voici une arborescence type:
<div lang="en-US">
```
login_x-TP1/webserver
login_x-TP1/webserver/Dockerfile
login_x-TP1/webserver/index.html
login_x-TP1/mycloud
login_x-TP1/mycloud/mycloud-run.sh
login_x-TP1/
login_x-TP1/mycloud-run.sh
```
</div>

View file

@ -3,15 +3,15 @@ title: Virtualisation légère -- TP n^o^ 1
subtitle: Les bases de Docker
author: Pierre-Olivier *Nemunaire* Mercier
institute: EPITA
date: Jeudi 5 octobre 2017
date: Jeudi 4 octobre 2018
...
Durant ce premier TP, nous allons apprendre à utiliser Docker !
Tous les éléments de ce TP (exercices et projet) sont à rendre à
<virli@nemunai.re> au plus tard le jeudi 19 octobre 2017 à 8 h 42. Consultez la
dernière section de chaque partie pour plus d'information sur les éléments à
rendre.
Le TP se termine par un petit projet à rendre à <virli@nemunai.re> au plus tard
le jeudi 18 octobre 2018 à 8 h 42, des questions de cours sont également à
compléter avant cette date sur Epitaf. Consultez la dernière partie de ce TP
pour les modalités.
En tant que personnes sensibilisées à la sécurité des échanges électroniques,
vous devrez m'envoyer vos rendus signés avec votre clef PGP. Pensez à

View file

@ -20,30 +20,21 @@ chaque commande `docker` tapée est passée au deamon dans la machine virtuelle.
`DOCKER_HOST` ou de passer le paramètre `-H` suivi de l'URL de la socket à
`docker`. Voir aussi : <https://docs.docker.com/machine/overview/>
## `runc` et `containerd`
La notion de conteneurs est maintenant normalisée par
[l'Open Container Initiative](https://opencontainers.org).
Docker lance des conteneurs respectant cette norme grâce au programme `runc`.
Toute la gestion de l'exécution du conteneur est déléguée au programme
`containerd`, également issu de l'initiative. Lui aussi est un daemon (géré
par Docker), dont le but est de monitorer les conteneurs lancés (pour les
relancer en cas de crash par exemple) ou encore de récupérer les logs de chaque
conteneur.
## Les images Docker
Une image Docker est un système de fichiers en lecture seule. Elle est formée
d'un ensemble de couches, agrégées selon le principe d'UnionFS.
Une image peut, par exemple, être un système Ubuntu complet ou juste contenir
le programme `busybox` ou encore un serveur web et votre application web, prêts
à l'emploi.
Une image peut, par exemple, contenir :
Les images sont utilisées pour créer des conteneurs.
* un système Ubuntu complet,
* le programme `busybox`,
* un serveur web et votre application web, prêts à l'emploi,
* ...
Les images sont utilisées comme modèle qui sera dupliqué lorsque l'on
démarre un nouveau conteneur.
Il y a deux méthodes pour obtenir des images Docker : soit les construire avec
les outils fournis, soit les récupérer depuis un registre.
@ -70,5 +61,7 @@ contenant des images. Ils permettent de récupérer des images, mais également
d'en envoyer.
Le registre utilisé de base est le [Docker Store](https://store.docker.com/) :
il contient à la fois des images officielles (ubuntu, debian, nginx, ...) et
des images créées par des utilisateurs.
il contient à la fois des images officielles (ubuntu, debian, nginx, ...), des
images créées par des utilisateurs ([Docker Hub](https://hub.docker.com/)),
mais aussi des images de grands éditeurs, payantes, à destination des
entreprises.

View file

@ -58,7 +58,7 @@ télécharger le paquet mis à disposition puis à l'installer via `dpkg -i`.
[^debrepos]: Le projet met à disposition des dépôts, si vous préférez cette
méthode, consultez la
[documentation d'installation](https://docs.influxdata.com/influxdb/v1.3/introduction/installation/#ubuntu-debian).
[documentation d'installation](https://docs.influxdata.com/influxdb/v1.6/introduction/installation/#ubuntu-debian).
Deux solutions s'offrent à nous :
@ -95,14 +95,14 @@ relevées.
Vous pouvez monitorer les métriques de n'importe quelle machine, simplement en
installant `telegraf` et en lui indiquant l'emplacement de son serveur
InfluxDB. Nous allons installer `telegraf` sur notre machine à l'aide de la
[documentation](https://docs.influxdata.com/telegraf/v1.0/introduction/installation/).
[documentation](https://docs.influxdata.com/telegraf/v1.8/introduction/installation/).
Ces quelques lignes devraient suffir à lancer la collecte, à condition que
votre InfluxDB écoute sur le port 8086 local :
<div lang="en-US">
```bash
TELEGRAF_VERSION=1.0.0
TELEGRAF_VERSION=1.8.0
wget https://dl.influxdata.com/telegraf/releases/telegraf-${TELEGRAF_VERSION}_linux_amd64.tar.gz
tar xf telegraf-${TELEGRAF_VERSION}_linux_amd64.tar.gz
TELEGRAF_CONFIG_PATH=./telegraf/etc/telegraf/telegraf.conf ./telegraf/usr/bin/telegraf
@ -127,15 +127,5 @@ Laissons tourner `telegraf` afin de constituer un petit historique de valeurs.
## Rendu
### Questions
1. Dans quel langage est écrit `telegraf` ?
1. Quelle(s) particularité(s) de ce langage permet de se passer de la variable
`LD_LIBRARY_PATH` au lancement de `telegraf`, alors qu'on ne l'a pas
installé ?
### Éléments à rendre
Avant de passer à la suite, placez votre `Dockerfile` et les éventuels fichiers
annexes dans un dossier `influxdb`.

View file

@ -20,7 +20,7 @@ Commençons par compléter la commande d'installation existante pour `influxdb`,
afin d'installer simultanément `chronograf`.
La documentation de la procédure est disponible
[à cette adresse](https://docs.influxdata.com/chronograf/v1.0/introduction/installation/).
[à cette adresse](https://docs.influxdata.com/chronograf/v1.6/introduction/installation/).
## Script d'init

View file

@ -1,12 +1,12 @@
---
title: Virtualisation légère -- TP n^o^ 3
title: Virtualisation légère -- TP n^o^ 2
subtitle: Construire des images Docker
author: Pierre-Olivier *Nemunaire* Mercier
institute: EPITA
date: Jeudi 11 octobre 2018
...
Durant ce troisième TP, nous allons voir comment créer nos propres images !
Durant ce deuxième TP, nous allons voir comment créer nos propres images !
Tous les éléments de ce TP (exercices et projet) sont à rendre à
<virli@nemunai.re> au plus tard le jeudi 18 octobre 2018 à 8 h 42. Consultez la