Skip to main content

Labo 4 - Les volumes

Nous pouvons monter des volumes dans un conteneur pour pouvoir interagir entre le système de fichiers de la machine hôte et celui du conteneur.

Créons un fichier dans la machine hôte

sudo echo OK > fic

09.png

Voilà comment monter le volume courant accessible depuis le conteneur :

sudo docker run -ti --rm -v $(pwd):/texte bash

10.png

Le paramètre $(pwd) est le chemin courant (là où on se trouve dans la machine hôte)

On retrouve bien le fichier fic

11.png

On peut également, à travers du conteneur, écrire dans ce fichier et vérifier dans la machine hôte si on a pu écrire dedans

echo TEST >> /texte/fic

Le paramètre >> permet d'incrémenter le texte du fichier

12.png

Il est également possible de donner accès à ce fichier en lecture seule de la manière suivante. En rajoutant une ligne nous aurons un message d'erreur disant que le fichier est en lecture seule (ro = read only) :

13.png

On peut également créer un script et voir s'il est compatible dans la version de bash que nous avons

Créons le script :

vi script.sh

echo OK &>> /tmp/test
cat /tmp/test

Le rendre executable

sudo chmod +x script.sh

Maintenant lançon-le dans docker

sudo docker run --rm -v $(pwd)/script.sh:/script.sh bash /script.sh

14.png

Attention de ne pas monter de dossier sensibles de la machine hôte sur le conteneur !