在这里插入图片描述根据给出的systemctl status docker输出,Docker服务处于失败状态,并且显示“exit-code”和“status=1/FALLURE”(这里可能有拼写错误,应该是FAILURE)。此外,日志中提到“Start request repeated too quickly.”,这表明Docker在尝试重启时频繁失败,导致systemd停止继续尝试。


先检查/etc/docker/daemon.json配置:
华为镜像加速器:

{
    "registry-mirrors": [ "https://<你的镜像加速器地址>.mirror.swr.myhuaweicloud.com" ]
}

如果还未解决,请按照以下步骤操作:

1. 检查详细日志

查看完整的Docker服务日志以定位具体错误:

sudo journalctl -u docker.service --since "10 minutes ago"

2. 验证containerd状态

Docker依赖containerd,确保其正常运行:

systemctl status containerd
  • 如果未运行,启动并启用:
    sudo systemctl start containerd
    sudo systemctl enable containerd
    

3. 检查Docker配置文件

临时移除或修复可能出错的配置文件:

sudo mv /etc/docker/daemon.json /etc/docker/daemon.json.bak
sudo systemctl restart docker

4. 修复存储驱动问题

如果存储驱动配置不当,在daemon.json中明确指定:

echo '{"storage-driver":"overlay2"}' | sudo tee /etc/docker/daemon.json
sudo systemctl restart docker

5. 检查端口冲突

确保Docker使用的端口(如2375/2376)未被占用:

sudo lsof -i :2375
  • 若有冲突,修改Docker配置或终止占用进程。

6. 清理Docker残留文件

重置Docker环境(注意:此操作会删除所有容器和镜像):

sudo systemctl stop docker
sudo rm -rf /var/lib/docker/*
sudo systemctl start docker

7. 重新安装Docker

如果以上步骤无效,尝试完全卸载后重新安装:

sudo apt-get purge docker-ce docker-ce-cli containerd.io
sudo rm -rf /var/lib/docker
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo systemctl start docker

8. 检查系统资源

确保磁盘空间和内存充足:

df -h      # 检查磁盘空间
free -h    # 检查内存使用

9. 调试模式启动

在docker.service中启用调试日志:

sudo sed -i 's/^ExecStart=.*/& -D/' /lib/systemd/system/docker.service
sudo systemctl daemon-reload
sudo systemctl start docker

执行上述步骤后,再次检查状态:

systemctl status docker

如果问题仍未解决,请根据journalctl输出的具体错误信息进一步调整。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐