'docker run -v'在使用Docker Toolbox的Windows上不起作用

时间:2015-11-06 12:02:14

标签: windows bash docker coreos docker-toolbox

从CoreOS VM运行以下命令时,它按预期工作:

docker run --rm -v $PWD:/data composer init

它将使用指定的Docker卷映射初始化当前工作目录中的composer.json文件。 Docker容器基本上安装了PHP工具组合器,并将在容器的/data文件夹中运行该工具。通过使用映射,它实际上将其应用于主机上的文件。

但是,当尝试使用Docker Toolbox在Windows上运行此命令时,我收到以下错误。

$ docker run --rm -v $PWD:/data composer --help
invalid value "C:\\Users\\Marco;C:\\Program Files\\Git\\data" for flag -v: bad mount mode specified : \Program Files\Git\data
See 'C:\ProgramData\Chocolatey\lib\docker\bin\docker.exe run --help'.

我在这里注意到的是,虽然我在Git Bash中执行命令时它仍然使用Windows路径。所以我试着跟随(用引号括起来):

$ "docker run --rm -v $PWD:/data composer --help"
bash: docker run --rm -v /c/Users/Marco:/data composer --help: No such file or directory

现在无法找到该目录。

我也试过没有$ PWD变量,但这没有什么区别。

如何在Windows上完成此工作?

2 个答案:

答案 0 :(得分:5)

这应该有效: $ docker run --rm -v //c/Users/Marco:/data composer --help

答案 1 :(得分:0)

尝试MSYS_NO_PATHCONV=1 docker run ...

Git Bash尝试转换其他Windows命令的路径。