我有一个Docker Swarm Stack。确切地说,三个管理器和两个节点。一个节点(仅在该节点上)上运行正常的服务很少,而我上面有一个僵尸容器,无法杀死它。我想耗尽此节点以防止访问此“坏的”容器(该容器正在工作,只是不响应任何命令,它是一个网站容器),并在以后创建一个健康的容器。而且我不确定这些服务是否会重新安排到“健康”节点上?
大概是docker system prune
尚未正确完成其工作,现在系统处于锁定模式。
我正在使用Moby Linux。
$ docker version
Client:
Version: 17.12.0-ce
API version: 1.35
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:05:03 2017
OS/Arch: linux/amd64
Server:
Engine:
Version: 17.12.0-ce
API version: 1.35 (minimum version 1.12)
Go version: go1.9.2
Git commit: c97c6d6
Built: Wed Dec 27 20:12:30 2017
OS/Arch: linux/amd64
Experimental: true
UDP1 :耗尽节点不会停止任何容器或重新安排服务,至少从一开始就不会。基本上,该节点上的所有服务都将继续运行。那是有趣的问题。
UPD2 :重新启动后,它开始出现有关“找不到此类映像...”的错误,可以通过再次登录Docker Hub来解决。
答案 0 :(得分:0)
这是集群,相同Kubernetes的原理,如果一个节点出现故障,只要存在主节点,它就应重新安排所有容器到其他节点的分配。