docker - Docker 失败并显示“无法启动容器:超时等待容器启动”
问题描述
我在 Ubuntu 18.04.2 上安装了 docker。
当我尝试启动 docker 时,它会失败并显示以下错误日志。
2020-07-16T23:49:14Z docker.dockerd[932]: failed to start containerd: timeout waiting for containerd to start
2020-07-16T23:49:14Z systemd[1]: snap.docker.dockerd.service: Main process exited, code=exited, status=1/FAILURE
2020-07-16T23:49:14Z systemd[1]: snap.docker.dockerd.service: Failed with result 'exit-code'.
2020-07-16T23:49:14Z systemd[1]: snap.docker.dockerd.service: Service hold-off time over, scheduling restart.
2020-07-16T23:49:14Z systemd[1]: snap.docker.dockerd.service: Scheduled restart job, restart counter is at 68.
2020-07-16T23:49:14Z systemd[1]: Stopped Service for snap application docker.dockerd.
2020-07-16T23:49:14Z systemd[1]: Started Service for snap application docker.dockerd.
它一遍又一遍地进入重新启动循环。我应该怎么做才能让 docker 再次工作?
解决方案
在这种情况下,docker 正在等待 containerd 启动。containerd pid 位于
/var/snap/docker/471/run/docker/containerd/containerd.pid.
这个pid不存在。但是当服务器被毫不客气地关闭时,该文件并没有被删除。删除这个文件可以让containerd进程重新启动,问题就解决了。我相信在 docker.pid 文件也指向不存在的 pid 的地方存在类似的问题。
推荐阅读
- c - 严格别名规则背后的基本原理是什么?
- html - 我如何使用css将两个div放在彼此下方
- java - 如何在 neo4j 中使用条件匹配
- html - 为什么聊天气泡箭头在旧浏览器上没有正确对齐
- redis - 使用 Redis 建模一对多关系
- mysql - 我需要组合 2 个查询,但需要总结其中的一部分
- javascript - Javascript window.location.href.match 不显示代码
- python - 使用 nx.degree_histogram 绘制图的度数分布
- spring - 用spring初始化JMS的MessagingException
- fastlane - 为什么使用 Fastlane 健身房解决 WatchOS 应用程序故障