Docker – windows – volume partagé

boot2docker fonctionne avec oracle virtualbox.

Le raccourci Boot2Docker Start, lance une machine virtuelle nommée : boot2docker-vm

Par défaut, le répertoire C:\Users est mounté dans /c/User

Pour ajouter un nouveau volume, dans la virtual box, il faut le préciser en paramètre de boot2docker dans sa phase de lancement via vbox-share.

boot2docker.exe –vbox-share=”D:\repertoire1\sous-repertoire=work” –vbox-share=”$HOME=userhome” up

Ensuite il faut mounter ces volumes partagés dans la VM.

boot2docker.exe ssh “sudo mkdir -p /work”
boot2docker.exe ssh “sudo mount -t vboxsf work /my-work”
boot2docker.exe ssh “sudo mkdir -p /my-home”
boot2docker.exe ssh “sudo mount -t vboxsf userhome /my-home”

L’ensemble de ces commandes peuvent être faite dans le script start.sh (qui est lancé par le raccourci boot2docker)

Maintenant nos répertoires sont accessibles depuis la VM.

Pour les utiliser dans un container docker rien de plus simple, quand vous faites un run de votre image ajouter le paramètre -v.

docker run -it -v ‘/my-work://home/user/data’  -v ‘/my-home://my-home’ debian //bin/bash

concrètement, on mount le répertoire /my-work de la vm dans le répertoire /home/user/data du container

et le répertoire /my-home de la vm dans le répertoire /my-home du container.

On notera l’utilisation d’un double /, valable pour la partie traitée côté container (//bin/bash, //home/user/data, //my-home).

That’s it!

 

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *