Docker允许您按名称link containers。
我有两个问题:
A
(客户端)链接到B
(服务),B
的端口是动态公开的(即实际主机端口由Docker确定,而不是由用户)。如果B
发生故障并重新启动会发生什么?
A
上的环境变量?B
?A
链接到B
已损坏?答案 0 :(得分:4)
您是否考虑过大使模式?
这个概念非常适用于您可能希望App服务器链接到数据库服务器但如果您关闭数据库服务器,则还需要重新启动App服务器。
http://docs.docker.io/en/latest/use/ambassador_pattern_linking/
答案 1 :(得分:2)
我会说:尝试;)。
目前,docker一旦开始就没有对该进程的任何控制,因为execve(3)
没有分叉。无法更新env,这就是为什么链接需要在容器运行之前完成,之后无法编辑。
Docker会尝试将同一个端口重新分配给B,但没有保修,因为其他容器可能正在使用它。
'破碎'是什么意思?如果您在未链接的容器之间禁用了网络连接,则在停止/启动容器时它仍然可以正常工作。
不,您还无法通过网络链接容器。