插件窝 干货文章 CentOS 7 安装 Docker 之后启动不了的解决方法

CentOS 7 安装 Docker 之后启动不了的解决方法

Docker sudo bash SELinux 655    来源:    2025-04-28

CentOS 7 安装 Docker 后启动失败的解决方法

当在 CentOS 7 上安装 Docker 后遇到无法启动的问题时,可以按照以下步骤进行排查和解决:

常见错误及解决方案

1. 检查 Docker 服务状态

sudo systemctl status docker

查看错误信息,常见的错误包括: - SELinux 冲突 - 存储驱动问题 - 防火墙冲突

2. SELinux 相关问题

如果错误与 SELinux 相关,可以尝试临时禁用 SELinux:

sudo setenforce 0

或者永久禁用(需重启生效):

sudo sed -i 's/^SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

或者配置 SELinux 允许 Docker 运行:

sudo yum install -y container-selinux

3. 存储驱动问题

检查当前存储驱动:

sudo docker info | grep "Storage Driver"

如果是 devicemapper 相关错误,可以修改为 overlay2:

sudo vi /etc/docker/daemon.json

添加以下内容:

{
  "storage-driver": "overlay2"
}

然后重启 Docker:

sudo systemctl restart docker

4. 防火墙冲突

停止并禁用防火墙:

sudo systemctl stop firewalld
sudo systemctl disable firewalld

或者开放 Docker 所需端口:

sudo firewall-cmd --permanent --zone=public --add-port=2375/tcp
sudo firewall-cmd --permanent --zone=public --add-port=2376/tcp
sudo firewall-cmd --reload

5. 内核版本问题

确保内核版本符合要求(3.10 或更高):

uname -r

如果内核版本过低,升级内核:

sudo yum install -y kernel kernel-devel
sudo reboot

6. 重新安装 Docker

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

# 卸载旧版本
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

# 清理残留文件
sudo rm -rf /var/lib/docker
sudo rm -rf /etc/docker

# 重新安装
sudo yum install -y yum-utils
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io

# 启动 Docker
sudo systemctl start docker
sudo systemctl enable docker

7. 检查日志获取更多信息

sudo journalctl -xe
sudo journalctl -u docker.service

根据日志中的具体错误信息进行针对性解决。

验证安装

成功启动后,运行测试容器验证:

sudo docker run hello-world

如果这些步骤仍不能解决问题,请提供具体的错误信息以便进一步诊断。