我在一个群中有三个节点。在每个节点上,我都有正在运行的容器,我可以通过docker看到这些容器。
当我做码头服务时,我看到了蜂群运行的服务。但是当我看到端口描述的输出时,打开的端口是不同的。这怎么可能呢?
当应用程序运行时,是由容器还是服务成群地完成工作?
谢谢
发布于 2022-01-26 17:12:57
在群中发布端口服务时,不同端口的行为是使用群模式路由网格时的一种正常行为。这种情况发生在您为服务发布端口但关闭已发布的端口值时。因此,如果关闭已发布的端口,则为每个服务任务绑定一个随机的高编号端口。您需要检查任务以确定端口。
$ docker service create \
--name <SERVICE-NAME> \
--publish published=<PUBLISHED-PORT>,target=<CONTAINER-PORT> \例如,以下命令将nginx容器中的端口80发布到群中任何节点的端口8080
$docker service create \
--name my-web \
--publish published=8080,target=80 \
--replicas 2 \
nginx在这个链接中,您将找到有关此行为的信息。
当您在当前配置中通过yaml文件应用更改时,此操作将覆盖当前设置,并覆盖来自新yaml文件的新配置,因此请采取预防措施,如在应用任何更改之前从当前配置进行备份。
https://stackoverflow.com/questions/70867103
复制相似问题