Ubuntu 20.04上Docker Application Container Engine启动失败求助
Ubuntu 20.04 Docker服务启动失败(exit-code 1)的排查与解决方法
首先,当前systemctl status仅显示启动失败,无具体错误细节,先获取完整日志定位问题:
- 执行命令查看Docker启动的详细错误日志:
日志会明确指出失败原因,以下是几种高频场景的解决方式:journalctl -xeu docker.service
1. 检查containerd依赖服务
Docker依赖containerd运行,先确认该服务状态:
- 查看containerd状态:
systemctl status containerd.service - 若未运行,启动并设置开机自启:
systemctl start containerd.service systemctl enable containerd.service - 重启Docker服务:
systemctl restart docker.service
2. 排查磁盘空间不足问题
Docker镜像、容器会占用大量磁盘,空间耗尽会导致启动失败:
- 查看磁盘分区使用情况:
df -h - 若
/var/lib/docker所在分区已满,清理无用资源(注意:此命令会删除未使用的镜像、容器、卷和网络,谨慎执行):docker system prune -a - 清理完成后重启Docker:
systemctl restart docker.service
3. 修复损坏的Docker配置文件
默认配置文件/etc/docker/daemon.json若存在语法错误,会导致dockerd启动失败:
- 先备份原有配置文件:
mv /etc/docker/daemon.json /etc/docker/daemon.json.bak - 重启Docker服务:
systemctl restart docker.service - 若服务正常启动,说明原配置文件有问题,检查并修正
daemon.json的JSON语法(比如逗号、括号不匹配),之后替换回去重启服务。
4. 重新安装Docker(组件损坏时)
若以上方法无效,可能是Docker核心组件损坏:
- 停止相关服务:
systemctl stop docker.service docker.socket containerd.service - 卸载现有Docker组件:
apt purge docker-ce docker-ce-cli containerd.io - 清理残留数据目录:
rm -rf /var/lib/docker /var/lib/containerd - 重新安装Docker:
apt update && apt install docker-ce docker-ce-cli containerd.io
5. 排查内核兼容性问题
如果最近更新过系统内核,可能存在兼容性冲突:
- 查看当前内核版本:
uname -r - 尝试重启服务器,让系统加载稳定内核;若重启后仍失败,可考虑降级至之前正常运行的内核版本。
内容的提问来源于stack exchange,提问作者jos
相关产品推荐
相关产品推荐

