【发布时间】:2017-03-29 01:05:02
【问题描述】:
我最初为 Docker for Windows 配置了我的 docker 设置。一切都很好。我正在使用 docker-compose 定义 3 个容器,每个容器都有一个从我的 ./src(主机上的路径)映射到 /src/(容器上的路径)的卷。
我最近发现生产服务器可能有 Windows 10 Home,它不支持 Docker for Windows。所以,我的想法是我应该回到 docker toolbox 为这种情况做好准备。
所以我卸载了 Docker for Windows 并安装了 Docker 工具箱。我可以用docker-compose build 构建我的图像就好了,但是现在当我运行docker compose up -d 时,我的2 个容器会立即崩溃,因为/src/ 目录永远不会被挂载。
我可以通过运行docker exec -it ng01 bash 并查看卷目录存在但为空来验证卷没有被挂载。我的 2 位同事可以使用 docker 工具箱在他们的 Windows 机器上重现此问题。
有谁知道为什么会发生这种情况,或者如何解决它?我一直在看一堆类似的 SO 帖子,但各种解决方案让我无处可去。我将不胜感激。
Here 是我的 docker-compose 文件。
我的源代码在 src/.
我在 docker/ 中有我的 Dockerfiles
Here 是 hotloader.Dockerfile。 Here 是 web.Dockerfile。我认为它们不是问题,但我还是不妨分享一下。
提前谢谢你!
【问题讨论】:
-
您的源项目文件夹在哪里?这是在您的 Windows 用户目录下吗? Docker Toolbox/Docker Machine 只将用户文件夹下的目录挂载到虚拟机中,详情请见github.com/docker/compose/issues/2548。
标签: windows docker docker-compose docker-toolbox