Come montare una directory host in un contenitore Docker

Sto provando a montare una directory host in un contenitore Docker in modo che gli aggiornamenti eseguiti sull’host vengano riflessi nei contenitori Docker. Non potevo riuscire dopo aver fatto ricerche su google e leggendo i link al volume di Docker.

Dove sto facendo qualcosa di sbagliato. Ecco cosa ho fatto:

kishore$ cat Dockerfile FROM ubuntu:trusty RUN apt-get update RUN apt-get -y install git curl vim CMD ["/bin/bash"] WORKDIR /test_container VOLUME ["/test_container"] 

 kishore$ cat Dockerfile FROM ubuntu:trusty RUN apt-get update RUN apt-get -y install git curl vim CMD ["/bin/bash"] WORKDIR /test_container VOLUME ["/test_container"] 

 kishore$ tree . ├── Dockerfile └── main_folder ├── tfile1.txt ├── tfile2.txt ├── tfile3.txt └── tfile4.txt 

kishore$ tree . ├── Dockerfile └── main_folder ├── tfile1.txt ├── tfile2.txt ├── tfile3.txt └── tfile4.txt

1 directory, 5 file
kishore $ pwd
/ Users / kishore / tdock

 kishore$ docker build --tag=k3_s3:latest . 

kishore$ docker build --tag=k3_s3:latest .

 Uploading context 7.168 kB Uploading context Step 0 : FROM ubuntu:trusty ---> 99ec81b80c55 Step 1 : RUN apt-get update ---> Using cache ---> 1c7282005040 Step 2 : RUN apt-get -y install git curl vim ---> Using cache ---> aed48634e300 Step 3 : CMD ["/bin/bash"] ---> Running in d081b576878d ---> 65db8df48595 Step 4 : WORKDIR /test_container ---> Running in 5b8d2ccd719d ---> 250369b30e1f Step 5 : VOLUME ["/test_container"] ---> Running in 72ca332d9809 ---> 163deb2b1bc5 Successfully built 163deb2b1bc5 Removing intermediate container b8bfcb071441 Removing intermediate container d081b576878d Removing intermediate container 5b8d2ccd719d Removing intermediate container 72ca332d9809 

kishore $ docker esegui -d -v / Users / kishore / main_folder: / test_container k3_s3: latest
c9f9a7e09c54ee1c2cc966f15c963b4af320b5203b8c46689033c1ab8872a0ea

 kishore$ docker run -i -t k3_s3:latest /bin/bash 

kishore$ docker run -i -t k3_s3:latest /bin/bash

 root@0f17e2313a46:/test_container# ls -al total 8 drwx------ 2 root root 4096 Apr 29 05:15 . drwxr-xr-x 66 root root 4096 Apr 29 05:15 .. 

root @ 0f17e2313a46: / test_container # exit
Uscita

 kishore$ docker -v Docker version 0.9.1, build 867b2a9 

Domande, problemi affrontati:

  1. Come devo colbind la main_folder alla cartella test_container presente all’interno del contenitore docker?
  2. Ho bisogno di farlo automaticamente. Come faccio a farlo senza usare veramente il comando run -d -v ?
  3. Cosa succede se il boot2docker si arresta in modo anomalo? Dove sono archiviati i file Docker (a parte Dockerfile)?