我在这里学习 Docker 教程 https://docs.docker.com/get-started/part3/
当我在页面教程快结束时执行命令 docker swarm leave --force
时,我不断收到 来自守护程序的错误响应:超出上下文截止时间
每次我执行 docker swarm leave --force
命令时,终端似乎只是挂起,它不再提供错误消息,但它不会返回到提示除非我按 CTRL+C,否则我无法输入任何命令。
链接教程开头的 docker swarm init
命令在这种状态下也没有响应。
唯一一次 docker swarm 命令再次工作是在我关闭我的 VM 实例并重新启动它时。但是,当我再次从链接中执行这些步骤时,我在 docker swarm leave --force
命令上遇到了同样的错误
知道为什么要这样做吗?
我在 Virtual Box 中运行 Ubuntu 18.04.1 LTS,docker 版本 18.09.0-rc1,build 6e632f7。
我看到了另一个链接 Cannot leave swarm mode关于同一个问题,它已经有 2 年历史了,那里的答案似乎是解决方法或完全删除 Docker 并重新安装以使其正常工作。我希望有另一种方法可以解决这个问题。
最佳答案
对于失败的管理器,对我有用的不是重新启动整个节点,而是停止 docker 服务,删除 /var/lib/docker/swarm
目录,重新启动 docker 服务,然后读取管理器:
关于经理失败(失败的经理):
sudo systemctl stop docker
sudo rm -r /var/lib/docker/swarm
sudo systemctl start docker
关于经理工作(其他,职能经理):
docker node demote manager-failing
docker node rm manager-failing
ssh manager-failing $(docker swarm join-token manager | tail -2)
关于Docker swarm leave --force - 超过上下文截止日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53197008/