Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/firebase/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
滚动更新后如何删除关机Docker服务任务?_Docker_Containers_Docker Swarm - Fatal编程技术网

滚动更新后如何删除关机Docker服务任务?

滚动更新后如何删除关机Docker服务任务?,docker,containers,docker-swarm,Docker,Containers,Docker Swarm,我正在使用Docker Swarm在AWS上测试服务。我最近对该服务应用了如下更新: docker service update --image TestImage:v2 --update-parallelism 2 \ --update-delay 10s TestService2 更新工作正常,服务将任务容器更新为v2。然而,一个快速的docker服务ps TestService2 | grep“v1”揭示了一系列关闭TestImage:v1任务 a0w77kj0k6jfg4r9g4nz

我正在使用Docker Swarm在AWS上测试服务。我最近对该服务应用了如下更新:

 docker service update --image TestImage:v2 --update-parallelism 2 \
--update-delay 10s TestService2
更新工作正常,服务将任务容器更新为v2。然而,一个快速的docker服务ps TestService2 | grep“v1”揭示了一系列关闭
TestImage:v1
任务

a0w77kj0k6jfg4r9g4nz47zzg   \_ TestService2.1   TestImage:v1  W1  Shutdown       Shutdown 36 minutes ago
2of4mc63ekzbib01w3x7q6sdm   \_ TestService2.2   TestImage:v1  W2  Shutdown       Shutdown 37 minutes ago
495frrpza5pxt205o1594x54a   \_ TestService2.3   TestImage:v1  W1  Shutdown       Shutdown 36 minutes ago
57l0gsqd26u2e5gdj30w8mcn9   \_ TestService2.4   TestImage:v1  M1  Shutdown       Shutdown 36 minutes ago
baoe1i79fswb34ydwbpafg6tm   \_ TestService2.5   TestImage:v1  M3  Shutdown       Shutdown 35 minutes ago
3uxi7kwxb73z69km6s17son58   \_ TestService2.6   TestImage:v1  M2  Shutdown       Shutdown 37 minutes ago
99cg4arnt1y52nd8d422bdu49   \_ TestService2.7   TestImage:v1  M3  Shutdown       Shutdown 36 minutes ago
cq5716jqp40h6jugo1j9ilzwp   \_ TestService2.8   TestImage:v1  M1  Shutdown       Shutdown 35 minutes ago
awlz1kxbrjk51dey7frm14d8u   \_ TestService2.9   TestImage:v1  W3  Shutdown       Shutdown 35 minutes ago
4xdi9a1jweyehfqlt76uynf3i   \_ TestService2.10  TestImage:v1  M2  Shutdown       Shutdown 36 minutes ago
eo4t6i0gaj5i294fcdnb3qncq   \_ TestService2.11  TestImage:v1  W3  Shutdown       Shutdown 35 minutes ago
3ydeuxdjquulv5xj94b9ovuwu   \_ TestService2.12  TestImage:v1  W1  Shutdown       Shutdown 36 minutes ago
如何在不访问每个swarm节点并在退出的容器上运行
docker rm
的情况下删除这些?我认为没有一个
docker service
命令来做这件事,我已经浏览了文档,但是有人知道我可以在Swarm Manager上运行一个黑客或脚本来清理节点吗


谢谢

滚动更新后,删除这些服务的容器;您只需留下一个被关闭的日志

您可以使用以下命令限制看到的数字:

docker swarm update --task-history-limit 5 
是的

docker swarm更新——任务历史记录限制2

docker机器停止管理器1

3ogu1r0y6s6t        web.2               nginx:latest        manager1            Running             Running 3 minutes ago
0cmzbd1oxwqr         \_ web.2           nginx:latest        manager1            Shutdown            Failed 3 minutes ago      "task: non-zero exit (255)"
wbxr5hubftfa        web.5               nginx:latest        manager1            Running             Running 3 minutes ago
bh3nkp05yd6r         \_ web.5           nginx:latest        manager1            Shutdown            Shutdown 25 minutes ago
docker机器启动管理器1

3ogu1r0y6s6t        web.2               nginx:latest        manager1            Running             Running 3 minutes ago
0cmzbd1oxwqr         \_ web.2           nginx:latest        manager1            Shutdown            Failed 3 minutes ago      "task: non-zero exit (255)"
wbxr5hubftfa        web.5               nginx:latest        manager1            Running             Running 3 minutes ago
bh3nkp05yd6r         \_ web.5           nginx:latest        manager1            Shutdown            Shutdown 25 minutes ago

PS C:\>docker服务PS web |选择字符串“manager1”


谢谢你,Geige V

在更新后多长时间它们被删除?如果我登录到一个节点,然后执行
docker ps-a
操作,我会看到容器仍然在那里,但已退出。嘿,Haris,你可能已经找到了答案,但我会为其他人回答。Docker保留了过去服务的多个副本,但会在更新时将其删除。因此,如果您的历史记录已满,最旧的副本将立即删除,最近删除的副本将添加到您的历史记录中。我需要立即清除它,因此我将限制设置为1。在下一个查询中,它只列出了“正在运行”的容器。即使删除了所有已退出的容器并将任务历史记录限制设置为1,我仍然可以看到关闭任务。这些指令在Docker的最新版本中是否仍然可行或不再有效?