TP1: Corrections and rephrasing
This commit is contained in:
parent
9587e183c8
commit
651283b526
6 changed files with 150 additions and 30 deletions
|
|
@ -3,29 +3,25 @@
|
|||
Stockage de données applicatives
|
||||
================================
|
||||
|
||||
Le concept principal de Docker est de concevoir des conteneurs applicatifs : on
|
||||
va préférer assigner un unique rôle à un conteneur (donc généralement on ne va
|
||||
lancer qu'une seule application par conteneur) et concevoir un service complet
|
||||
en créant un groupe de conteneurs, partageant des données entre eux par des
|
||||
volumes.
|
||||
Il est généralement toujours possible d'écrire dans le système de fichier de
|
||||
notre conteneur. (Cela n'affecte pas l'image, chaque conteneur est démarré à
|
||||
partir de l'image originale.) Cependant, il n'est pas recommandé de chercher à
|
||||
stocker des données ainsi. En effet, il n'est pas aisé de récupérer ces données
|
||||
une fois l'exécution du conteneur terminée ; les données peuvent même être
|
||||
détruite si on a lancé le conteneur avec l'option `--rm`.
|
||||
|
||||
Il est possible d'utiliser la dernière couche en lecture/écriture pour inscrire
|
||||
des données. Il n'est cependant pas recommandé de stocker des données de cette
|
||||
manière, car elles ne vont pas persister une fois que le conteneur aura terminé
|
||||
son exécution ; elles seront alors plus compliquées à retrouver manuellement.
|
||||
|
||||
Docker met à notre disposition plusieurs mécanismes pour que les données de nos
|
||||
applications persistent et soient prêtes à migrer plus facilement vers une
|
||||
solution plus apte à la décentralisation.
|
||||
Docker met donc à notre disposition plusieurs mécanismes pour que les données
|
||||
de nos applications persistent et soient prêtes à être migrées d'un conteneur à
|
||||
l'autre.
|
||||
|
||||
|
||||
## Partage avec la machine hôte
|
||||
|
||||
Il est possible de monter un répertoire de la machine hôte dans un
|
||||
Il est possible de partager un répertoire de la machine hôte avec un
|
||||
conteneur. L'intérêt reste plutôt limité à des fins de facilité ou de test, par
|
||||
exemple si vous voulez partager des fichiers avec votre voisin, en passant par
|
||||
le protocole HTTP, mais sans se casser la tête à installer et configurer un
|
||||
serveur web :
|
||||
exemple si vous voulez partager des fichiers en passant par le protocole HTTP,
|
||||
mais sans se casser la tête à installer et configurer un serveur web, vous
|
||||
pourriez utiliser :
|
||||
|
||||
<div lang="en-US">
|
||||
```bash
|
||||
|
|
@ -33,14 +29,17 @@ docker run --rm -p 80:80 -v ~/Downloads:/usr/share/nginx/html:ro -d nginx
|
|||
```
|
||||
</div>
|
||||
|
||||
Une fois cette commande lancée, votre voisin pourra accéder à votre dossier
|
||||
Downloads en renseignant l'IP de votre machine dans son navigateur favori !
|
||||
Une fois le conteneur lancé, vous pourrez accéder à votre dossier *Downloads*
|
||||
en renseignant l'IP de votre machine dans un navigateur !
|
||||
|
||||
::::: {.warning}
|
||||
|
||||
Par défaut, `nginx` ne va pas permettre de lister le contenu du répertoire (et
|
||||
va afficher une page 404, car il cherche un fichier `index.html` dans votre
|
||||
répertoire). Vous pouvez par contre accéder à un fichier directement, par
|
||||
exemple : <http://10.42.12.23/dQw4w9WgXcQ.mp4>
|
||||
|
||||
:::::
|
||||
|
||||
## Les volumes
|
||||
|
||||
|
|
@ -77,9 +76,12 @@ docker container run --name mydb -e MYSQL_ROOT_PASSWORD=my-secret-pw \
|
|||
```
|
||||
</div>
|
||||
|
||||
Lorsque le volume est vide, si des données sont présentes à l'endroit du point
|
||||
de montage, celles-ci sont recopiées dans le volume.
|
||||
::::: {.question}
|
||||
|
||||
Lorsque le volume est vide, si des données sont présentes dans l'image à
|
||||
l'endroit du point de montage, celles-ci sont recopiées dans le volume.
|
||||
|
||||
:::::
|
||||
|
||||
## Volumes temporaires
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue