You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 15:45:23