7

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

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

它将composer.json使用指定的 Docker 卷映射初始化当前工作目录中的文件。Docker 容器基本上安装了 PHP 工具 Composer,并将/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 上进行这项工作?

4

2 回答 2

7

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

于 2015-11-30T15:15:52.207 回答
0

尝试MSYS_NO_PATHCONV=1 docker run ...

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

于 2016-01-22T13:59:44.020 回答