I am trying to mount a host directory to my nginx docker container. However, it's not mounting what I would expect.
docker-compose.yml:
nginx:
image: nginx
volumes:
- ./app:/root/testfolder
Here's the contents of the directory in the container:
root@846e68e6e8b5:/# ls root/testfolder/
50x.html index.html
And the directories on my host:
bash-3.2$ ls
app bower.json docker-compose.yml gulpfile.js node_modules package.json
bash-3.2$ ls app/
app.js assets bower_components common index.html modules
bash-3.2$
This is the current versions I am running:
OSX 10.10.5
Docker version 1.10.0, build 590d5108
docker-compose version 1.6.0, build d99cad6
docker-machine version 0.6.0, build e27fb87
I'd expect the host directory ./app
to be mounted in root/testfolder
. Why is this not the case?
If you are using Docker Machine on Mac or Windows, docker has limited access to your OS X or Windows filesystem. By default Docker Machine tries to auto-share your
/Users
(OS X) orC:\Users
(Windows) directory.So the folder
/app
must be located somewhere under/Users
directory in the host.All other paths come from your virtual machine’s filesystem, so if you want to make some other host folder available for sharing, you need to do additional work. In the case of VirtualBox you need to make the host folder available as a shared folder in VirtualBox.