我最近开始学习docker,并使用Lubuntu映像设置了一个虚拟机(VirtualBox):
Linux 4.18.0-10-generic i68618.06.1-ce,API-版本:1.38,Go版本:go1.10.4,Git提交:e68fc7a所以,除非我已经开始了解蜂群,否则一切都进行得很顺利。但是,在我执行docker swarm init守护进程之后,似乎已经崩溃了,无论我现在试图执行什么命令,它都会用:Cannot connect to Docker daemon at..进行响应。
当我试图运行sudo dockerd时,它会显示输出,其中有一些警告,比如failed to load plugin io.containerd.snapshotter.v1.btrfa,还有一个错误是error creating cluster object... error="name conflicts with an existing object" module=node node.id=...。最后,输出以floating point exception结束,内存中有一些地址。
重新开始是没有帮助的。使docker运行的唯一事情是恢复到我在调用swarm init之前幸运地创建的快照。
所以我会感谢你的帮助或建议,我如何解决一切。
发布于 2019-05-16 06:29:08
此响应适用于内核:Linux4.132-1075-rockchip ga83beded8524架构: aarch64 GNU/Linux
在群模式下向集群发出命令时,我也遇到了同样的问题。
运行docker info将导致Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
运行sudo systemctl start docker将导致服务状态和输出读取失败。
Job for docker.service failed because the control process exited with error code.
See "systemctl status docker.service" and "journalctl -xe" for details.运行systemctl status docker.service将导致
docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: failed (Result: exit-code) since Thu 2019-05-16 06:03:46 UTC; 1min 12s ago
Docs: https://docs.docker.com
Process: 3874 ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock (cod
Main PID: 3874 (code=exited, status=2)运行journalctl -xe不会产生任何与码头相关的信息
运行sudo dockerd -D将产生大量的输出,并具有特定的行读取error="name conflicts with an existing object" module=node node.id=105rworelt1fvw9ttjhnf61aw。
在/var/lib/docker中,有一个名为swarm的文件夹,并对字符串105rworelt1fvw9ttjhnf61aw目录中的所有文件和文件夹执行grep操作,得到了两个文件,其中包含字符串105rworelt1fvw9ttjhnf61aw。sudo grep -r "105rworelt1fvw9ttjhnf61aw“/var/lib/docker/grep/
这两个文件是/var/lib/docker/swarm/.tmp-state.json504201306和/var/lib/docker/swarm/state.json
在这一点上,我不觉得很外科,所以我删除了/var/lib/docker/swarm下的所有文件和文件夹,然后再次尝试sudo systemctl start docker
A bit surgical: sudo rm -ri /var/lib/docker/swarm/注意:不要删除swarm目录。如果你再创造一次的话。
在此之后,一个docker info就可以工作了,我可以再次使用docker swarm init并部署一个没有问题的堆栈。
https://devops.stackexchange.com/questions/5778
复制相似问题