从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上完成此工作?
答案 0 :(得分:5)
这应该有效:
$ docker run --rm -v //c/Users/Marco:/data composer --help
答案 1 :(得分:0)
尝试MSYS_NO_PATHCONV=1 docker run ...
Git Bash尝试转换其他Windows命令的路径。