温馨提示×

centos docker为啥报错

小樊
33
2026-10-23 08:37:10
栏目: 智能运维

“CentOS 上 Docker 报错”原因有很多,不看到完整报错信息只能给你一份常见原因清单 + 对应解决办法。你可以对照一下,也可以把报错贴出来我帮你精准看。


一、最常见报错场景

1️⃣ Cannot connect to the Docker daemon

报错示例

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?

原因

  • Docker 服务没启动
  • 当前用户没权限

解决

# 启动 docker
systemctl start docker
systemctl enable docker

# 把当前用户加入 docker 组
usermod -aG docker $USER
# 重新登录

2️⃣ CentOS 7 内核太老(最常见)

报错示例

permission denied
overlay2: unknown
kernel too old

原因

  • CentOS 7 默认内核 3.10
  • 新 Docker / 新镜像不支持

解决

# 升级内核
yum install -y kernel
reboot

或改用:

  • docker-ce 老版本
  • 或换 CentOS 8 / Rocky / Alma

3️⃣ Failed to start Docker Application Container Engine

报错示例

Job for docker.service failed

常见原因

  • 防火墙 / SELinux
  • 存储驱动问题

解决

# 关闭 SELinux(测试用)
setenforce 0

# 修改 docker 存储驱动
cat > /etc/docker/daemon.json <<EOF
{
  "storage-driver": "overlay2"
}
EOF

systemctl restart docker

4️⃣ 镜像拉不下来(国内常见)

报错示例

net/http: TLS handshake timeout

原因

  • 访问 Docker Hub 被墙

解决(国内镜像)

cat > /etc/docker/daemon.json <<EOF
{
  "registry-mirrors": [
    "https://docker.m.daocloud.io",
    "https://hub-mirror.c.163.com"
  ]
}
EOF

systemctl restart docker

5️⃣ device mapper 报错(CentOS 老系统)

解决

# 改用 overlay2
yum install -y yum-utils
yum-config-manager --add-repo ...

二、快速自检命令(建议你先跑)

docker version
systemctl status docker
journalctl -xeu docker
uname -a

三、你可以这样发给我

直接贴:

1. CentOS 版本(cat /etc/redhat-release)
2. docker 版本
3. 完整报错(复制粘贴)

我可以一条一条帮你定位并给出命令。

0 踩