我已经用
创建了一个音量$ 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
作为目录。但是,如果我在一个容器内的该目录中创建一个文件,则新文件不会显示在另一个容器中。据我了解卷概念,新文件应该显示在另一个容器中。它目前无法正常工作或如何正确设置?
答案 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/