【发布时间】:2016-05-03 09:25:00
【问题描述】:
我正在使用 Docker 部署一些服务,我想在不同的容器之间共享 Docker 卷。
假设我有一个 Docker 容器 A,它在 /data 上安装了一个卷。这是它的 Dockerfile:
VOLUME /data
据我了解,这会将卷附加到容器,但不会将主机目录挂载到容器。所以这个volume里面的数据还在容器A里面。
我有另一个提供 FTP 服务的容器 B。它访问卷 /public 下的数据。它的 Dockerfile 是:
VOLUME /public
现在我想将它们链接在一起,以便我可以使用 B 来管理 A 的数据。从Docker文档https://docs.docker.com/engine/userguide/containers/dockervolumes/我将使用--volumes-from标志将A的数据卷挂载到B。但是这个命令会将A的数据挂载到B中的/data而不是/public,在这种情况下,容器B无法访问数据。我没有看到任何重命名挂载点的方法。
有什么建议或最佳实践来处理这个案例吗?
仅数据容器为这种情况提供了一个很好的解决方案。但是如果你想使用volumes-from并将数据挂载到不同的挂载点,这个问题可能会有所帮助! How to map volume paths using Docker's --volumes-from?
【问题讨论】:
标签: docker dockerfile