#1容器运行时为定义了一个卷/data
,我想使用运行选项--volumes-from
将该卷安装到另一个容器,但是我想更改第二个容器的路径。
换句话说/data
,应该将容器1的容器安装到/custom/data
容器2的内部。
那可能吗?有解决方案吗?
谢谢!
当前无法向中添加自定义选项--volumes-from
。
有两种可能的解决方案。但是,都不是完美的...
解决方案1
我个人不喜欢这样,因为它仅适用于Linux。它不适用于Boot2Docker。如何使用Docker的--volumes-from映射卷路径?
解决方案2
第二种解决方案是使用符号链接。效果很好,但最后有一个警告。
运行带有交互式外壳程序和来自容器#1的卷的docker容器;busybox非常适合:
docker run --rm -it --volumes-from container-1-name busybox
container-1-name
容器1的名称在哪里。
在打开的贝壳,你可以创建符号链接,从点/custom/data
到/data
。假设根目录/custom
已经存在(mkdir
如果不存在,请首先使用),键入:
ln -s /data /custom/data
现在您可以检查此链接是否存在。您应该会看到以下内容:
/ # ls -l custom/
total 0
lrwxrwxrwx 1 root root 5 Mar 4 08:09 data -> /data
然后,完成此容器。出口。现在,如果您创建了一个不使用的新容器--volumes-from container-1-name
,它可以访问/data
via的内容/custom/data
。
警告:您应注意,使用的容器--volumes-from container-1-name
将同时具有/data
和/custom/data
。使用此解决方案无法解决。在大多数情况下,我认为这很好。但是,如果这对您没有好处,则需要找到其他解决方案。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句