news 2026/6/10 0:43:37

RHEL 7 安装 Docker 过程总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RHEL 7 安装 Docker 过程总结

基于执行的历史命令,以下是完整的 RHEL 7 系统安装 Docker 的过程总结。这个过程通过更换为 CentOS 7 的 YUM 源,巧妙地解决了 RHEL 7 的$releasever变量与阿里云 Docker 镜像路径不匹配的核心问题。

📋 安装步骤与命令解析

第 1 步:解决基础源问题

# 211 - 将阿里云的 CentOS 7 仓库配置下载为系统的基础源wget-O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo# 212 - 安装 yum-utils 工具包(包含 yum-config-manager 等)sudoyuminstall-y yum-utils# 213 - 挂载本地光盘(备用,但此安装未实际使用)mount/dev/cdrom /mnt

关键点:第 211 行命令是解决后续问题的核心前提。通过将系统基础源替换为 CentOS 7 的阿里云镜像,确保了$releasever变量被识别为7而非7Server

第 2 步:添加 Docker 仓库

# 214 - 添加阿里云 Docker CE 仓库(使用 centos 路径)yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

路径说明:此命令添加的是.../linux/centos/docker-ce.repo而非.../linux/rhel/docker-ce.repo,这与第一步的 CentOS 源保持一致。

第 3 步:尝试安装与问题排查

# 215 - 第一次安装尝试(预期会因 $releasever 问题失败)sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 216 - 针对性修复 Docker 仓库文件中的变量sudosed-i's/\$releasever/7/g'/etc/yum.repos.d/docker-ce.repo# 217 - 第二次安装尝试sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

此时可能仍存在其他仓库文件(如docker-ce-stable.repo)包含$releasever变量。

第 4 步:全面修复与成功安装

# 218 - 清理 YUM 缓存yum clean all# 219 - 第三次安装尝试sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 220 - 查看当前目录文件ll# 221 - 批量修复所有 docker 相关的仓库文件sudosed-i's/\$releasever/7/g'/etc/yum.repos.d/docker*.repo# 222 - 第四次安装尝试sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 223 - 最彻底的修复:替换所有仓库文件中的 $releaseversudosed-i's/\$releasever/7/g'/etc/yum.repos.d/*.repo# 224 - 最终成功的安装sudoyuminstalldocker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

第 5 步:验证安装

# 225 - 查看 Docker 版本确认安装成功docker--version# 226 - 查看历史命令history

第 6 步:配置国内镜像源

mkdir-p /etc/dockertee/etc/docker/daemon.json<<-'EOF' { "registry-mirrors": [ "https://0b27f0a81a00f3560fbdc00ddd2f99e0.mirror.swr.myhuaweicloud.com", "https://ypzju6vq.mirror.aliyuncs.com", "https://registry.docker-cn.com", "http://hub-mirror.c.163.com", "https://docker.mirrors.ustc.edu.cn" ] } EOF# 重启服务systemctl daemon-reload systemctl restartdocker

🎯 关键技术要点

1.问题本质

  • RHEL 7 的$releasever变量值为7Server
  • 阿里云镜像库的路径结构期望77Server特定值
  • 两者不匹配导致404错误

2.解决方案演变

  1. 初步尝试:单独修改docker-ce.repo文件(第216行)
  2. 扩展修复:批量修改docker*.repo文件(第221行)
  3. 彻底解决:修改所有*.repo文件(第223行)

3.最优实践命令

# 完整安装流程(已验证有效)wget-O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.reposudoyuminstall-y yum-utils yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.reposudosed-i's/\$releasever/7/g'/etc/yum.repos.d/*.reposudoyum clean allsudoyuminstall-y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

⚡ 经验总结

  1. 源一致性是关键:使用 CentOS 7 源配套 CentOS 路径的 Docker 仓库,保持一致性
  2. 变量替换要彻底:不仅仅是 Docker 仓库,所有仓库文件中的$releasever都可能需要替换
  3. 清理缓存很重要:在修改仓库配置后执行yum clean all可避免缓存干扰
  4. 批量替换效率高sudo sed -i 's/\$releasever/7/g' /etc/yum.repos.d/*.repo是最可靠的修复方式

这种方法避免了复杂的仓库配置调整,通过统一系统的$releasever识别方式,从根本上解决了 RHEL 7 使用阿里云 Docker 镜像的兼容性问题。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 1:02:30

Minecraft启动器太复杂?用PCL2三步打造你的专属游戏管理中心

Minecraft启动器太复杂&#xff1f;用PCL2三步打造你的专属游戏管理中心 【免费下载链接】PCL2 项目地址: https://gitcode.com/gh_mirrors/pc/PCL2 还在为Minecraft版本切换繁琐而头疼&#xff1f;是否因模组安装混乱导致游戏崩溃&#xff1f;作为一款专为我的世界玩家…

作者头像 李华
网站建设 2026/6/8 6:21:21

ObjToSchematic:突破3D创意实现边界的创新工具

ObjToSchematic&#xff1a;突破3D创意实现边界的创新工具 【免费下载链接】ObjToSchematic A tool to convert 3D models into Minecraft formats such as .schematic, .litematic, .schem and .nbt 项目地址: https://gitcode.com/gh_mirrors/ob/ObjToSchematic 在数字…

作者头像 李华
网站建设 2026/6/9 1:38:21

解锁Minecraft新玩法:Plain Craft Launcher 2全方位使用手册

解锁Minecraft新玩法&#xff1a;Plain Craft Launcher 2全方位使用手册 【免费下载链接】PCL2 项目地址: https://gitcode.com/gh_mirrors/pc/PCL2 Plain Craft Launcher 2&#xff08;简称PCL2&#xff09;是一款开源Minecraft启动器&#xff0c;通过多账户管理、智能…

作者头像 李华
网站建设 2026/6/9 18:37:54

区域模拟与乱码解决:Locale-Emulator突破软件区域限制完全指南

区域模拟与乱码解决&#xff1a;Locale-Emulator突破软件区域限制完全指南 【免费下载链接】Locale-Emulator Yet Another System Region and Language Simulator 项目地址: https://gitcode.com/gh_mirrors/lo/Locale-Emulator Locale-Emulator作为一款强大的区域模拟工…

作者头像 李华
网站建设 2026/6/9 19:51:52

Z-Image-Turbo CI/CD集成:AI模型服务持续交付流程设计

Z-Image-Turbo CI/CD集成&#xff1a;AI模型服务持续交付流程设计 1. Z-Image-Turbo UI界面概览 Z-Image-Turbo 的交互体验围绕一个简洁、直观的 Gradio 界面展开。它不是需要复杂配置的命令行工具&#xff0c;而是一个开箱即用的可视化图像生成平台——你不需要写代码、不需…

作者头像 李华