我设置了Windows Server:docker Swarm并创建了一个可连接的覆盖网络。但是,不同服务器中的容器之间的通信不会发生。
如果我将Linux服务器添加到Swarm覆盖网络,我可以从Linux服务器容器访问Windows服务器容器IP,但反之亦然。
请解释为什么它不在Windows Server容器中发生。
对于Windows Server,像Transparent、Bridge和L2Bridge这样的网络驱动程序被创建为本地网络。windows server中哪个支持多节点容器通信?
我设置了Windows Server Swarm并创建了一个可连接的覆盖网络。但是,不同服务器中的容器之间的通信不会发生。
如果我将Linux服务器添加到Swarm覆盖网络,我可以从Linux服务器容器访问Windows服务器容器IP,但反之亦然。请解释为什么它不在Windows Server容器中发生。
对于Windows Server,像Transparent、Bridge和L2Bridge这样的网络驱动程序被创建为本地网络。哪个支持windows server中的多节点容器通信
1条答案
按热度按时间shyt4zoc1#
此问题可能与Windows Server上的网络配置或防火墙设置有关。默认情况下,Docker Swarm使用覆盖网络来实现集群中不同节点上运行的容器之间的通信。然而,这要求网络被正确地配置为允许流量在节点之间流动。
在网络驱动程序方面,覆盖驱动程序通常用于Docker Swarm中的多节点容器通信,无论节点是在Windows还是Linux上运行。覆盖驱动程序创建一个虚拟网络,该网络跨越集群中的所有节点,允许容器彼此通信,而不管它们在哪个节点上运行。
您可以通过运行 docker network ls 命令并检查您创建的覆盖网络来检查Windows Server上的网络配置。您还可以检查Windows Server上的防火墙设置,以确保允许流量在群中的节点之间流动。