Hil*_*kus 18 docker dockerfile
如果我VOLUME
在docker文件中使用它,它会创建一个匿名卷.有没有办法从dockerfile创建命名卷?
我正在寻找相当于Dockerfile的
docker run -v my-named-volume:/mnt/something repo/my-img
Run Code Online (Sandbox Code Playgroud)
我通过Dockerfile设法获得的相当于
docker run -v /mnt/something repo/my-img
Run Code Online (Sandbox Code Playgroud)
我认为它不受支持; 然而,医生说这个
VOLUME指令创建具有指定名称的安装点,并将其标记为从本机主机或其他容器保存外部安装的卷.
这似乎意味着有一种方法可以命名音量,但它没有说明如何
有点不清楚.它使用该名称创建安装点,但实际文件路径不使用该名称.如果您这样做docker inspect {container-name}
,您将看到如下名称:"Destination": "/mnt/something",
和实际位置,如:"Source": "/var/lib/docker/volumes/cb80c7802244dd3669eed8afb7d94b61366844d80677eb180fa12002db04ea7c/_data",
.
这是因为Dockerfile没有绑定到特定主机,并且无法确定主机卷路径是否存在.您需要在run
(或等效的)语句中执行此操作.docker inspect
如果需要在脚本或类似文件中使用该信息,则可以使用api或在创建容器后找出卷的位置.
在Dockerfile中声明卷可确保数据保持不变并且可供主机使用 - 即使该位置未预设.
归档时间: |
|
查看次数: |
6850 次 |
最近记录: |