Docker Swarm:如何更新已发布的帖子

时间:2021-01-28 01:45:58

标签: docker 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

enter image description here

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

2 个答案:

答案 0 :(得分:0)

删除这些服务并像这样启动它:

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

答案 1 :(得分:0)

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

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