gpt4 book ai didi

docker - 所有 docker swarm 实例都可以在同一台机器上运行吗?

转载 作者:行者123 更新时间:2023-12-02 17:59:23 27 4
gpt4 key购买 nike

我有几个 Docker swarm 问题(很抱歉没有将它们分开,但它们都是密切相关的):

  • swarm 中的所有实例都必须在不同的机器上运行,还是它们都可以在同一台机器上运行? (如果硬件数量有限,只想尝试 swarm 模式)
  • 我是否必须运行集群模式才能在实例之间进行通信?
  • swarm 模式和仅正常运行多个容器之间的主要区别是什么?
  • 容器实例之间的通信选项有哪些? (在 swarm 和常规模式下)http?命名管道?其他?
  • 如果在同一台机器上的容器之间使用 http 通信,它会与命名管道大致相同吗?
  • Docker 中是否有对消息总线或类似的内置支持?
  • Docker 中是否支持任何共识协议(protocol)?
  • 是否有任何用于设计、管理、测试和/或调试 Docker 群的 GUI?
  • 容器可以列出其他容器,停止/重新启动一些容器并启动新容器吗? (能够作为其他容器的管理器)
  • 是否可以授予容器访问操作系统功能(在我的情况下为 Linux)以配置例如反向代理或 WAN 上的端口转发的权限?

  • 背景:我想弄清楚我应该如何使用 Docker 构建微服务网格。容器将运行 .NET Core。我不太热衷于过度依赖 Docker,因为它在几年内可能不会成为首选技术。我可以/应该用 Docker 做什么,我可以/应该在容器内做什么。这就是我想要弄清楚的。

    最佳答案

    我已经复制了你的问题并试图回答它们。

  • swarm 中的所有实例都必须在不同的机器上运行,还是它们都可以在同一台机器上运行? (如果硬件数量有限,只想尝试 swarm 模式)
  • 您可以在一个集群中只有一台机器并运行同一服务的多个任务,或者换句话说,您的服务规模可以超过实际机器的数量。我有一个带有单台机器和一个带有三台机器的测试群,它的工作方式相同。
  • 我是否必须运行集群模式才能在实例之间进行通信?
  • 您必须以 swarm 模式运行 docker 才能创建服务,请参阅 this link
  • swarm 模式和仅正常运行多个容器之间的主要区别是什么?
  • afaik 的关键区别在于,当一个任务失败时,docker 会自动启动另一个任务。您可以轻松扩展服务,这意味着您只需扩展服务(向上或向下)即可轻松完成多项任务。在运行容器时 - 当它出现故障时,您必须手动启动另一个。
  • 容器实例之间的通信选项有哪些? (在 swarm 和常规模式下)http?命名管道?其他?
  • 我目前只在同一个网络上的几个 Wildfly 服务器上进行了测试。我不确定其他人,但很想知道。我只读过 RabbitMQ,但似乎找不到链接 atm。
  • 如果在同一台机器上的容器之间使用 http 通信,它会与命名管道大致相同吗?
  • 我不能说。
  • Docker 中是否有对消息总线或类似的内置支持?
  • 我不能说。
  • 是否有任何用于设计、管理、测试和/或调试 Docker 群的 GUI?
  • 我已经测试了 rancher 和 portainer.io,我找到了它们的列表 this link
  • 容器可以列出其他容器,停止/重新启动一些容器并启动新容器吗?
  • 我不确定你为什么要这样做?我想这是可能的,见 this link
  • 是否可以授予容器访问操作系统功能(在我的情况下为 Linux)以配置例如反向代理或 WAN 上的端口转发的权限?
  • 我不能说。
  • 关于docker - 所有 docker swarm 实例都可以在同一台机器上运行吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50890833/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com