【发布时间】:2016-05-31 10:56:07
【问题描述】:
我在 Windows 中使用 Docker Toolbox,并尝试在 docker-compose.yml 文件中挂载一个 Windows 文件夹,如下所示:
nginx:
image: nginx:latest
container_name: test_server
ports:
- "80:80"
volumes:
- /sss:/c/data/www:ro
environment:
- VIRTUAL_HOST=test.local
我的目标是将C:\data\www 挂载到已经由 Docker Toolbox 创建的 boot2docker VM 映像,然后从那里挂载到其中的 nginx 容器。
不幸的是,它不起作用。我在 boot2docker 映像中获得了一个文件夹 sss,但它是空的,没有针对我的 Windows 数据。
我做错了什么?是否有更好的做法可以在开发时在 Windows 上使用 Docker(因此您需要在 Windows、Docker VM (boot2docker) 和 Docker 容器之间共享代码)?
【问题讨论】:
-
请记住,对于 boot2docker,有两层抽象:一个 Linux 虚拟机,然后是在该 VM 中运行的 Docker 引擎。 Docker Compose 对运行 Docker 的 VM 之外的世界一无所知,例如,无法配置 VirtualBox 共享文件夹。 boot2docker 文档中对此进行了一些讨论:github.com/boot2docker/boot2docker#folder-sharing
标签: docker boot2docker docker-compose docker-toolbox