Docker Swarm用于管理无头容器,并保持更新(或了望塔?)

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (101)

我一直在尝试设计一种策略,使用Docker Swarm管理一堆无头容器 - 不需要负载均衡器,暴露任何端口或自动扩展。

我唯一想要的是能够更新所有容器(在所有节点上),如果任何图像更新。每个运行的容器都需要具有特定的--hostname

docker service为此运行是否可行?或者我应该只是做一个正常的docker run目标特定节点来指定--hostname我想要的?我甚至询问的原因docker service是因为它允许你进行更新(如果有更新的图像,则强制更新所有容器)。

还想到Docker Swarm会让你更容易关注所有容器(即从中心位置管理它们)。

我正在看的另一个选项是了望塔,在每个运行其中一个容器的服务器上运行,作为swarm的替代品。我唯一的问题是它没有为集中管理提供任何编排。

任何人都对这个场景有什么更好的选择有什么想法?

提问于
用户回答回答于

除了docker service命令之外,Docker swarm没有为滚动更新提供任何优势,swarm只为用户提供水平扩展,并在这些名为“service”的副本之前放置一个负载均衡器,以及其他一些好东西,例如复制docker事件跨越群集节点。

docker service --force 会按预期工作。

但是,您应该使用docker swarm作为编排和了望塔来进行滚动更新。

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励