【发布时间】:2017-01-24 20:13:41
【问题描述】:
我刚刚完成了beginners Docker tutorials,想知道如何清理。
我使用以下命令部署了一个堆栈和一些不同的服务:
docker stack deploy --compose-file docker-stack.yml vote
是否可以停止与此堆栈关联的所有容器,还是我必须单独停止它们?
【问题讨论】:
标签: docker docker-stack
我刚刚完成了beginners Docker tutorials,想知道如何清理。
我使用以下命令部署了一个堆栈和一些不同的服务:
docker stack deploy --compose-file docker-stack.yml vote
是否可以停止与此堆栈关联的所有容器,还是我必须单独停止它们?
【问题讨论】:
标签: docker docker-stack
您可以使用以下方法删除堆栈:
docker stack rm vote
目前这仍然是一个分离的操作,需要时间在后台运行。
如果由于某种原因您仍然需要堆栈和服务定义,您可以将“复制”服务缩减到 0 个副本,并且“全局”服务可以添加不匹配任何节点的约束。
docker service update --replicas 0 $service_name
docker service update --constraint-add node.labels.no_such_node=true $service_name
【讨论】:
docker stack rm 没有清理所有内容,这就是我发现这个 SO 问题的原因。
docker stack rm 不是也在删除容器吗?不应该有一个命令在需要时停止它们吗?
docker service update --constraint-add no_such_node==true $service_name