【问题标题】:Can I create two ingress in Docker Swarm?我可以在 Docker Swarm 中创建两个入口吗?
【发布时间】:2023-04-04 01:05:01
【问题描述】:

当我在 swarm 模式下自动运行 docker host 时,会创建一个入口网络,现在我的问题是我可以使用一些命令创建第二个入口网络还是可以创建多个入口网络?

【问题讨论】:

  • 入口网络是 swarm 内部的,为什么需要第二个入口网络?
  • 如果我创建一个本质上不会进入的新覆盖网络,对吗?

标签: linux docker networking docker-swarm


【解决方案1】:

docker swarm 在内部使用入口网络将已发布端口上的外部流量路由到集群内运行的服务。您无需将服务配置为直接使用此网络,而是只需发布一个端口,其余的由 docker 处理。

对于您的服务之间的通信,需要使用用户定义的覆盖网络来完成。使用撰写文件和docker stack deploy 命令,这是默认完成的。如果没有 compose 文件,您将使用覆盖驱动程序创建网络,例如docker network create -d overlay appnet 然后将您的服务连接到该网络。为了将服务彼此隔离,您可以将它们添加到单独的覆盖网络(注意入口网络不允许服务之间的通信,它严格用于网络术语中的北/南流量)。

【讨论】:

  • 谢谢,这很有帮助。因此,如果我创建新的覆盖来隔离服务,那么默认情况下,入口将应用于新的覆盖?
  • @PoojaBhatia 入口网络是独立的,你不要碰它。您不会将网络相互连接,它们每个都作为独立的岛屿工作。容器可以连接到多个网络(例如具有多个 NIC 的 Linux 主机)。
猜你喜欢
  • 2017-08-24
  • 1970-01-01
  • 1970-01-01
  • 2023-04-04
  • 2014-11-11
  • 2022-08-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多