'docker run -v' 无法在 Windows 上使用 Docker 工具箱

'docker run -v' does not work on Windows using Docker Toolbox

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

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

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

但是,当尝试使用 Docker 工具箱在 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 上进行这项工作?

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

尝试MSYS_NO_PATHCONV=1 docker run ...

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