Docker工具箱(Windows):卷规范无效 配置

Docker工具箱(Windows):卷规范无效 配置,docker,docker-toolbox,Docker,Docker Toolbox,使用Windows 10,Docker工具箱(不是本机Docker,以便能够使用VM) 背景 有一个Python(2.7)脚本应该运行Docker容器。代码如下所示: self.docker.containers.run('container_name', command='bash -c "%s"' % command, volumes={PROJECT_PATH: {'bind': '

使用Windows 10,Docker工具箱(不是本机Docker,以便能够使用VM)

背景 有一个Python(2.7)脚本应该运行Docker容器。代码如下所示:

self.docker.containers.run('container_name',
                           command='bash -c "%s"' % command,
                           volumes={PROJECT_PATH: {'bind': '/shared', 'mode': 'rw'}},
                           working_dir='/shared',
                           remove=True,
                           **kwargs)
问题 正在尝试运行脚本:

* Building the DummyProbe docker image
* Running the DummyProbe container   
500 Server Error: Internal Server Error ("invalid volume specification: 'C:\Users\Foo\..:/shared:rw'")
思想 搜索web后,
无效的卷规范
似乎是由Windows和Linux处理目录结构的方式引起的。Linux使用斜杠
/
,而Windows-back使用斜杠
\
。类似问题:

但是在我的情况下,
COMPOSE\u CONVERT\u WINDOWS\u路径
被设置为
true
,并尝试设置为
1

动力壳

码头工人工具箱 其他问题中的建议都不起作用

更新 尝试使用将
\
替换为
/
,并在脚本中使用它:

500 Server Error: Internal Server Error ("invalid volume specification: 'C:/Users/***/..:/shared:rw'")

所以这似乎不是一个问题

我可以通过用
/
替换所有
\
,用
/C
替换
C:
来实现这一点

破碎的道路:
C:\\Path\\to\\file
变成
/c/path/to/file

似乎负责返回系统路径的
os
模块没有内置函数将Windows转换为Unix路径。Docker工具箱也不能处理这种对话(如果它应该的话)


也许还有其他优雅的方式来完成这项工作。但是现在我们只使用这一个。

可能是因为
COMPOSE\u CONVERT\u WINDOWS\u路径
需要一个int,例如
1
0
500 Server Error: Internal Server Error ("invalid volume specification: 'C:/Users/***/..:/shared:rw'")