如何在不删除的情况下以群模式停止/启动 docker 容器?

Ser*_*kov 8 linux docker docker-swarm

我是 docker swarm 模式的新手。如您所知,可以启动/停止 docker 容器,但我认为不可能在 swarm 中执行此操作。
例如,我已经部署了 swarm 并使用副本(2/2)创建了新任务:

docker service ls
ID                  NAME                MODE                REPLICAS            IMAGE                                                                               PORTS
2o3a6z30q9df        contactactivity     replicated          2/2                 myimage/live-springboot-myservice:19ff0be1f0087asd1dasdb52c345151e9985b4a5a2   *:111->1111/tcp
Run Code Online (Sandbox Code Playgroud)

是否可以在不移除一个 swarm 容器的情况下停止它并在将来将其带回来?

PS我只是想澄清删除或重新创建 - 在我的情况下不是选项。

让 Q 清楚:如果你停止容器然后启动 - 这个容器不会成为 swarm 的一部分。我无法相信在 swarm 模式下无法进行简单的重启或启动/停止。

Har*_*ola 7

列出为服务运行的容器并停止它们 docker ps | grep service-name ,然后使用docker stop <ID>上面的命令停止容器。

                                 OR
Run Code Online (Sandbox Code Playgroud)

如果您想停止所有容器,那么只需将服务缩小到 0,如下所示, docker service scale servicename=0 使用 docker service scale servicename=N

  • 执行 `docker service scale servicename=0` 会删除数据! (2认同)