首页 > 解决方案 > Docker Swarm:如何更新已发布的帖子

问题描述

我使用 Play-with-Docker 平台创建了一个包含 3 个 Docker 实例的 Swarm 集群:1 个管理器和 2 个工作器;然后我从图像创建一个服务nginx:alpine

docker service create -p 8080:80 --name nginx-app nginx:alpine

事情进展顺利。

然后我update更改发布端口的服务:而不是8080,现在我希望发布端口是8081. 我跑了这个:

docker service update --publish-rm 8080 --publish-add 8081 nginx-app

但它并没有删除发布的端口8080;相反,它创建了另一个已发布的端口30002,该端口30002映射到8081

在此处输入图像描述

我在这里做错了什么?如何更改已发布的端口?

标签: dockerdocker-swarm

解决方案


--publish-rm选项采用目标端口,而不是发布的端口:

docker service update --publish-rm 80 --publish-add 8081:80 nginx-app

推荐阅读