【发布时间】:2020-01-06 17:14:17
【问题描述】:
我刚刚开始了解 Docker,并考虑用 Docker 基础架构替换我的基于 VM 的基础架构。我想知道如何处理容器之间的依赖关系以及如何决定何时/是否需要重新启动依赖容器,如果需要,如何最大限度地减少停机时间。
为了更准确,我发现了诸如 fig 或 decking 之类的工具来管理容器和依赖项,因此(如果我幸运的话)我得到了一个有向无环图,它告诉我启动或执行的顺序下容器。例如 mongodb 容器必须在 webserver 容器之前启动。
所以如果我更新 MongoDB 或更改一些设置,我想我也应该关闭网络服务器,因为它不能很好地处理不存在的数据库。在这种情况下,如何最大限度地减少因关闭和重启容器而导致的停机时间,包括重新部署 Jetty webapp 等?
但是,如果我只是更新我的 SMTP 服务器(所有其他容器或多或少都依赖它),我不希望这会触发我的整个容器基础架构的重启。那么,邮件服务器容器重启后,其他容器是否还能访问之前链接的端口?
你如何处理这种情况?我是否需要/是否可以为每个容器 ABC 添加一个大使容器 ABC_amb,在 ABC 重新启动等时永远不会关闭并保持连接?
【问题讨论】:
标签: dependencies admin docker fig