CentOS系统需满足Docker的最低版本要求:
uname -r验证);sudo dnf config-manager --set-enabled powertools),并确保内核版本符合Docker要求。sudo yum update kernel -y后重启系统)。避免使用系统默认仓库(如CentOS 8默认仓库已移除Docker),手动添加Docker官方源:
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo;/etc/yum.repos.d/docker-ce.repo文件,内容如下:[docker-ce-stable]
name=Docker CE Stable - basearch
baseurl=https://download.docker.com/linux/centos/8/basearch/stable
enabled=1
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
添加后安装Docker:sudo yum install -y docker-ce docker-ce-cli containerd.io。
旧版containerd.io可能与Docker版本不兼容,需手动安装适配版本:
sudo yum install -y https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.4.3-3.1.el7.x86_64.rpm
再安装Docker(sudo yum install -y docker-ce docker-ce-cli)。若存在与其他软件包(如Podman)冲突,需卸载冲突软件包(sudo yum remove podman)。
sudo setenforce 0)或修改/etc/selinux/config文件(将SELINUX=enforcing改为permissive);nftables替代iptables,可能导致DNS解析问题。需放行Docker端口(sudo firewall-cmd --permanent --add-port=2375/tcp)并重载防火墙(sudo firewall-cmd --reload)。overlay2是Docker推荐的存储驱动,需修改/etc/docker/daemon.json文件:
{
"storage-driver": "overlay2",
"storage-opts": ["overlay2.override_kernel_check=true"]
}
重启Docker服务使配置生效(sudo systemctl restart docker)。若使用XFS文件系统,需确保启用d_type支持(sudo xfs_growfs -d /)。
Docker缓存可能导致安装或启动问题,可清理缓存(sudo docker system prune -a);若服务无法启动,需重启Docker(sudo systemctl restart docker)并查看日志(sudo journalctl -u docker.service)定位具体错误。
若存在旧版本残留,需彻底卸载:
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 /etc/docker
然后按照上述步骤重新安装Docker。