Linux下如何删除搭建好的Docker Swarm集群
#查看docker服务
root@debnas:/home/vagrant# docker service ls
ID NAME MODE REPLICAS IMAGE PORTS
w4dzlhww86w1 portainer_agent global 2/1 portainer/agent:latest
#删除服务
root@debnas:/home/vagrant# docker service rm portainer_agent
#查看节点
root@debnas:/home/vagrant# docker node ls
ID HOSTNAME STATUS AVAILABILITY MANAGER STATUS ENGINE VERSION
lf9dk6pai10k1ukpun799twva Tower Down Active 19.03.14
u00ugusqrgalpamvvbw9ji2uj * debnas Ready Active Leader 20.10.12
#排空节点上的集群容器
root@debnas:/home/vagrant# docker node update --availability drain lf9dk6pai10k1ukpun799twva
lf9dk6pai10k1ukpun799twva
#删除节点
root@debnas:/home/vagrant# docker node rm lf9dk6pai10k1ukpun799twva
lf9dk6pai10k1ukpun799twva
#管理节点,解散集群
root@debnas:/home/vagrant# docker swarm leave --force
Node left the swarm.
各个节点离开集群(必须先是node节点离开集群,然后manager节点才能离开集群)
[root@server2 ~]# docker swarm leave #server2对应的node节点离开集群
[root@server3 ~]# docker swarm leave #server3对应的node节点离开集群
[root@server1 ~]# docker swarm leave --force #必须使用参数--force,强制离开集群,否则会报错
[root@server1 ~]# docker node ls #此时再次查看集群的节点,会报错。这是因为i集群已经散了,该节点不再是manager节点,而只有manager节点才能查看集群的节点。
Error response from daemon: This node is not a swarm manager. Use "docker swarm init" or "docker swarm join" to connect this node to swarm and try again.
本作品采用 知识共享署名-相同方式共享 4.0 国际许可协议 进行许可。