# Docker - Volumes

Les points testés ici:

  • Les volumes pour un seul container
  • Les volumes partagés entre container
  • Les droit d'accés

On repart ici avec l'image container qu'on a creer dans Docker - Create Image

# Les volumes pour un seul container =====

Historiquement on utilisait le -v ou --volume pour les volumes a container unique. Mais depuis la version 17.06 la doc préconnise d'utiliser le --mount aussi bien pour les volumes pluri container que les standalone container. --mount est un peu plus verbeux, mais soit, suivons les préconisation de la documentation, aprés tout je suis 18.06 au moment ou j’écris ces lignes.

# On suit ce qui a été fait avant
# On crée un dossier pour stocker les volumes
mkdir /DockerVolume

# On crée un container
docker run -d -p 80:80 \
  --name lamp-1 \
  --mount source=lamp-www,target=/var/www \
  -t lamp-v1:latest

# On peut vérifier que le volume a bien été créer.
ls /DockerData/volumes/lamp-www

# Vous noterez qu'il contient les fichier qui étaient présent 
# par défaut dans le container.

# Si vous supprimez le container, cela supprime également le volume.

# Arrêtons ce container et détruisons le
docker stop lamp-1
docker rm lamp-1

# Cette fois ci on va choisir le dossier a monté
# Créons le dossier
mkdir /DockerVolume/lamp-www

# Et la dite commande
docker run -d -p 80:80 \
  --name lamp-1 \
  --mount source=/DockerVolume/lamp-www,target=/var/www \
  -t lamp-v1:latest

# Et pour le principe ajoutons un petit site web
cd /DockerVolume/lamp-www
git clone https://code.barbed.fr/Draak/Website_Test.git

# Les volumes partagés entre container

# Les droit d'accés