在Bluemix容器上挂载卷并在它们之间共享不起作用

时间:2015-08-29 22:56:42

标签: docker ibm-cloud

我已经用

创建了一个音量
$ cf ic volume create mosquitto_config

此信息按预期显示:

$ cf ic volume list
mosquitto_config

然后,我创建了两个基于图像的容器,其中包含Dockerfile中的VOLUME ["/etc/mosquitto"]行,并且我可以通过SSH登录:

$ cf ic run -p 22:22 --volume mosquitto_config:/etc/mosquitto --name ssh-test registry.ng.bluemix.net/{reg-name}/{image-name}:latest
$ cf ic run -p 22:22 --volume mosquitto_config:/etc/mosquitto --name ssh-test-2 registry.ng.bluemix.net/{reg-name}/{image-name}:latest

登录后,我在两个容器上看到挂载点/etc/mosquitto作为目录。但是,如果我在一个容器内的该目录中创建一个文件,则新文件不会显示在另一个容器中。据我了解卷概念,新文件应该显示在另一个容器中。它目前无法正常工作或如何正确设置?

1 个答案:

答案 0 :(得分:0)

这种分享卷的方式我认为不支持docker。

为了让容器访问另一个容器的卷,您可以简单地将-volumes-from参数提供给docker run。例如:

$ docker run -it -h NEWCONTAINER --volumes-from container-test debian /bin/bash

所有卷装在'容器测试'将提供给'NEWCONTAINER' (使用相同的挂载选项)

重要的是要注意即使容器测试没有运行它也能工作:只要容器链接到它就永远不会删除卷。

如需进一步帮助,请查看此网址 http://container-solutions.com/understanding-volumes-docker/