我开始使用Docker 17.09 hyper-v,我的机器运行Windows 10 Pro。到目前为止,我设法创建了图像并运行我正在处理的网站。我的问题是盯着音量。这就是我启动容器的方式:
docker run -p 81:80 -v C:/Users/Andre Luiz/Documents/Projects/dockerTest/src:/var/www/html php5.6
我也试过这个:
docker run -p 81:80 -v //c/users/andre luiz/documents/projects/dockertest/src:/var/www/html php5.6
试图找到答案,我发现我应该启用共享驱动程序(设置 - >共享驱动程序并启用驱动程序)。我这样做了,到目前为止它不起作用,我不断收到这条消息:invalid reference format: repository name must be lowercase.
你知道我缺少什么,或者Docker根本没有在Windows上安装卷吗?
感谢您的帮助
答案 0 :(得分:1)
我发现了问题,这是有效的命令:
docker run -p 81:80 -v c:/Projects/dockerTest/src/:/var/www/html/ php5.6
问题是路径中的空白。所以基本上你只能在路径中使用[a-zA-Z0-9][a-zA-Z0-9_.-]
个字符,如以下链接所述:https://github.com/moby/moby/issues/25599
答案 1 :(得分:0)
您不必重命名目录以避免使用空格。您可以使用短名称。每个Windows文件/目录都有两个名称 - 您看到的长名称和兼容性的短名称。例如,Program Files
通常是PROGRA~1
。要查看这些短名称,请在命令提示符中使用dir /x
。
C:\>dir /x
Volume in drive C is OS
Volume Serial Number is 220E-7DE8
Directory of C:\
10/17/2017 11:05 PM <DIR> PROGRA~1 Program Files
11/03/2017 02:11 PM <DIR> PROGRA~2 Program Files (x86)
10/17/2017 11:06 PM <DIR> Users
10/31/2017 07:12 PM <DIR> Windows
10/31/2017 10:04 AM <DIR> Windows.old
04/11/2017 11:05 AM <DIR> WINDOW~1 Windows10Upgrade
第四栏是短名。如果没有短名称,长名称应该足够好。