我在Windows 10上工作并使用docker工具箱。
当我使用docker run
命令运行容器时,可以将本地文件系统文件夹安装在容器文件夹上,如下所示:
docker run -ti --name local -p 80:80 -d -v /c/Users/name/htdocs:/app webdevops/php-apache-dev
但是当我尝试使用docker-compose up
并制作这样的docker-compose.yml
文件时,它不起作用-容器看不到我的本地文件系统:
version: '3.6'
services:
server:
image: webdevops/php-apache-dev
ports:
- "80:80"
volumes:
- /c/Users/name/htdocs:/app
可能是什么原因造成的?
答案 0 :(得分:0)
我认为您的docker-compose.yml
文件中存在一个小的语法问题。如果看不到本地文件系统,则可能是您传递了不存在的字符串。我认为/c/Users/name/htdocs
不是主机上的实际绝对目录。您能分享一下吗?也许您还没有在字符串中转义非字母字符?
答案 1 :(得分:-1)
我找到了一个答案。我的用户名实际上由两个词组成,我在docker-compose.yml文件的run
命令中使用了转义斜杠。
事实证明,docker-compose.yml文件中不需要它。实际上,它变成了其他斜杠,使我的User Name
变成了User/Name
。