我正在尝试将能够生成DooD兄弟容器的控制器容器化:
[root@host]$ docker run -v /var/run/docker.sock:/var/run/docker.sock controller ...
控制器接收上载的文件,进行一些本地处理,创建正确类型的工作容器,并将请求分派给工作人员,等待生成的输出文件返回给客户端:
[root@controller]$ docker run -v /tmp/files:/home/worker/workspace worker ...
不幸的是,上面的代码不起作用,因为工作人员的/home/worker/workspace
目录实际上已映射到 HOST 的/tmp/files
而不是控制器。
控制器容器本身不保留任何数据,因此没有来自主机的显式卷映射。
有什么方法可以将目录/tmp/files
从控制器容器共享到同级工作容器?
答案 0 :(得分:1)
您可以使用命名卷。
只需使用
[root@host]$ docker run -v /var/run/docker.sock:/var/run/docker.sock -v my_named_volume:/tmp/files controller ...
和
[root@controller]$ docker run -v my_named_volume:/home/worker/workspace worker ...
猜测应该可以解决问题。
答案 1 :(得分:0)
为什么不使用docker compose使具有相同卷装载的服务
它可以像
Eventually