如何使用Docker的--volumes-from映射卷路径?
我是Docker的新手,对使用该--volumes-from
功能感到兴奋,但是有些事情我不了解。
如果我想使用--volumes-
from两个仅数据容器,每个容器都导出名为的卷/srv
,如何防止卷路径冲突?使用创建绑定装载时,我可以映射卷名称[host-
dir]:[container-dir]。我该怎么做--volumes-from
?
所以我想要的看起来像这样:
docker run --name=DATA1 --volume=/srv busybox truedocker run --name=DATA2 --volume=/srv busybox true
docker run -t -i -rm --volumes-from DATA1:/srv1 --volumes-from DATA2:/srv2 ubuntu bash
回答:
可以完成,但目前在Docker命令行界面中尚不支持。
回答:
查找卷目录:
docker inspect DATA1 | grep "vfs/dir"# output something like:
# "/srv": "/var/lib/docker/vfs/dir/<long vol id>"
因此,您可以自动执行此操作,并将这些目录挂载到您选择的挂载点:
# load directories in variables:SRV1=$(docker inspect DATA1 | grep "vfs/dir" | awk '/"(.*)"/ { gsub(/"/,"",$2); print $2 }')
SRV2=$(docker inspect DATA2 | grep "vfs/dir" | awk '/"(.*)"/ { gsub(/"/,"",$2); print $2 }')
现在,通过真实目录而不是–volumes-from挂载这些卷:
docker run -t -i -v $SRV1:/srv1 -v $SRV2:/srv2 ubuntu bash
IMO,功能是相同的,因为这与使用时所做的相同--volumes-from
。
以上是 如何使用Docker的--volumes-from映射卷路径? 的全部内容, 来源链接: utcz.com/qa/434128.html