1. 系统准备和依赖检查
# 检查系统版本
cat /etc/redhat-release
# 更新系统
sudo yum update -y
# 安装必要依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
2. 配置 Docker 仓库
方法一:使用官方 Docker CE 仓库(推荐)
# 添加 Docker CE 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo
# 如果遇到 SSL 证书问题,可以尝试:
sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/rhel/docker-ce.repo
方法二:使用 Red Hat 额外仓库(EPEL)
# 启用 EPEL 仓库
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# 添加 Docker CE 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
3. 安装 Docker CE
# 查看可用的 Docker 版本
yum list docker-ce --showduplicates | sort -r
# 安装指定版本(推荐安装较新的稳定版)
sudo yum install -y docker-ce-20.10.9 docker-ce-cli-20.10.9 containerd.io
# 或者安装最新版本
sudo yum install -y docker-ce docker-ce-cli containerd.io
4. 启动和配置 Docker
# 启动 Docker 服务
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 验证安装
sudo docker --version
sudo docker run hello-world
5. 配置用户权限(可选)
# 将当前用户添加到 docker 组
sudo usermod -aG docker $USER
# 重新登录或运行以下命令使组生效
newgrp docker
# 测试非 root 用户运行
docker run hello-world
6. 配置 Docker 镜像加速
# 创建或修改 Docker 配置
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com"
],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m",
"max-file": "3"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
# 重启 Docker
sudo systemctl restart docker
7. 验证安装
# 查看 Docker 信息
docker info
# 运行测试容器
docker run -it --rm centos:7 cat /etc/redhat-release
# 查看运行中的容器
docker ps
8. 卸载 Docker(如果需要)
# 停止服务
sudo systemctl stop docker
# 卸载 Docker
sudo yum remove -y docker-ce docker-ce-cli containerd.io
# 删除相关文件
sudo rm -rf /var/lib/docker
sudo rm -rf /etc/docker
注意事项
内核要求:RHEL 7.7 默认使用内核 3.10,Docker 需要内核 3.10 或更高版本
存储驱动:推荐使用 overlay2,但需要内核 4.x 以上。RHEL 7.7 默认使用 devicemapper
SELinux:如果启用了 SELinux,可能需要调整策略
# 临时禁用
sudo setenforce 0
# 永久禁用(编辑 /etc/selinux/config)
SELINUX=disabled
问题排查
# 查看 Docker 服务状态
sudo systemctl status docker
# 查看 Docker 日志
sudo journalctl -u docker
# 检查存储驱动
docker info | grep "Storage Driver"
按照以上步骤,你应该可以在 RHEL 7.7 上成功安装和配置 Docker。