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

Fedora 36下Docker守护进程无法连接问题求助

Docker 服务运行但无法连接&卷存储元数据库超时问题(Fedora 36)

问题背景

操作系统:Fedora 36

系统更新重启后Docker容器无法运行,docker-compose失效,执行以下操作后问题仍存在:

  1. 启动Docker服务:
sudo service docker start
  1. 确认服务已启动(sudo service docker status输出):
redirecting to /bin/systemctl status docker.service
● docker.service - Docker Application Container Engine
     Loaded: loaded (/usr/lib/systemd/system/docker.service; disabled; vendor p>
     Active: active (running) since Wed 2022-09-14 10:29:01 MDT; 1s ago
TriggeredBy: ● docker.socket
       Docs: https://docs.docker.com
   Main PID: 2778 (dockerd)
      Tasks: 22
     Memory: 114.0M
        CPU: 347ms
     CGroup: /system.slice/docker.service
             └─ 2778 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/con>

Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.385376990-06:00>
Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.439821904-06:00>
Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.696795461-06:00>
Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.839972916-06:00>
Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.895624616-06:00>
Sep 14 10:29:00 fedora dockerd[2778]: time="2022-09-14T10:29:00.994809032-06:00>
Sep 14 10:29:01 fedora dockerd[2778]: time="2022-09-14T10:29:01.017873180-06:00>
Sep 14 10:29:01 fedora dockerd[2778]: time="2022-09-14T10:29:01.018007624-06:00>
Sep 14 10:29:01 fedora systemd[1]: Started docker.service - Docker Application >
Sep 14 10:29:01 fedora dockerd[2778]: time="2022-09-14T10:29:01.035944310-06:00>

5分钟后再次检查状态,服务仍处于运行状态。

出现的错误

  1. 执行docker ps -a时收到:

Cannot connect to the Docker daemon at unix:///home/XXXXX/.docker/desktop/docker.sock. Is the docker daemon running?

  1. 执行sudo dockerd时收到:

failed to start daemon: error while opening volume store metadata database: timeout

已尝试的排查步骤

  • 确认Docker服务正常运行
  • 修改/var/run/docker.sock权限为当前用户:
    sudo chown XXXXX:docker /var/run/docker.sock
    
    修改后权限:
    srw-rw---- 1 XXXXX docker 0 Sep 14 10:29 /var/run/docker.sock
    
  • 多次重启Docker服务

解决方案

1. 修正Docker客户端的sock路径指向

错误提示连接的是Docker Desktop的sock路径,但你使用的是系统级Docker服务,需让客户端指向正确路径:

  • 临时生效:执行
    export DOCKER_HOST=unix:///var/run/docker.sock
    
  • 永久生效:将上述命令添加到~/.bashrc或~/.zshrc文件,执行source ~/.bashrc(对应shell配置文件)使变更生效

2. 修复卷存储元数据库超时

该错误多由元数据数据库损坏或锁死导致:

  1. 停止所有Docker相关服务:
    sudo systemctl stop docker
    sudo systemctl stop docker.socket
    sudo systemctl stop containerd
    
  2. 备份Docker数据目录(防止数据丢失):
    sudo cp -r /var/lib/docker /var/lib/docker.bak
    
  3. 删除损坏的数据库文件:
    sudo rm -rf /var/lib/docker/volumes/metadata.db
    
  4. 重启服务:
    sudo systemctl start containerd
    sudo systemctl start docker.socket
    sudo systemctl start docker
    
  5. 执行docker ps -a验证是否恢复

3. 配置Docker组权限(替代手动修改sock权限)

手动修改sock权限会在服务重启后被重置,正确做法是将用户加入docker组:

sudo usermod -aG docker $USER

执行后重新登录或执行newgrp docker使权限生效


内容的提问来源于stack exchange,提问作者TheWebs

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 06:16:21