我无法理解以下某些语法:
docker run -v $PWD/public/test/:/data/
有没有熟悉的人可以简单评论一下,以便我能够理解并继续前进。
答案1
这告诉docker
使目录public/test
在容器中可用/data
。
示例:public/test/hello.html
可以使用/data/hello.html
Docker 容器访问该文件(相对于您当前的工作目录)。
注意:该命令docker run -v $PWD/public/test/:/data/
不完整。至少还需要指定图像名称(:
也可能包含,但含义不同)。
在您的示例$PWD/public/test/:/data/
中价值传递给选项 -v
。
来自文档这指定了体积:
-v, --volume=[host-src:]container-dest[:<options>]: Bind mount a volume.
[...]
卷命令非常复杂,因此在章节中有自己的文档使用卷。 [...]
[...]
必须
container-dest
始终是绝对路径,例如/src/docs
。host-src
可以是绝对路径,也可以是值name
。如果您为 提供绝对路径host-src
,Docker 将绑定挂载到您指定的路径。如果您提供name
,Docker 将根据该 创建一个命名卷name
。
$PWD
与命令无关docker
。这将指示您正在输入此命令的 shell 将其替换为当前工作目录 前它被传递给docker
命令。
在您的示例$PWD/public/test/
中绝对路径对于host-src
和/data/
是container-dest
。