Rocky Linux 9.5离线环境保姆级教程:手把手搞定Docker 25.0.5完整部署

发布时间:2026/5/19 15:45:14

Rocky Linux 9.5离线环境保姆级教程:手把手搞定Docker 25.0.5完整部署 Rocky Linux 9.5离线环境保姆级教程手把手搞定Docker 25.0.5完整部署在金融、军工等对网络安全要求极高的行业环境中服务器往往部署在严格的内网隔离环境中无法直接访问互联网获取软件包和依赖。这种场景下如何在离线环境中部署Docker容器引擎成为许多运维工程师面临的挑战。本文将提供一个完整的离线部署方案从依赖包下载到最终验证覆盖x86_64和aarch64两种主流架构确保您能在无外网访问的生产环境中顺利完成Docker 25.0.5的部署。1. 环境准备与依赖收集1.1 确定系统架构与版本在开始之前首先需要确认目标服务器的CPU架构和操作系统版本。Rocky Linux 9.5支持x86_64和aarch64两种主流架构选择错误的安装包会导致部署失败。# 查看系统架构 uname -m # 查看操作系统版本 cat /etc/redhat-release对于x86_64架构的Intel/AMD处理器应选择x86_64版本的Docker对于ARM架构的处理器如华为鲲鹏、AWS Graviton等则需要选择aarch64版本。1.2 联网环境下的准备工作在能够访问互联网的机器上我们需要完成以下准备工作创建工作目录并下载Docker二进制包使用yum下载所有依赖包整理传输介质U盘、内网传输工具等关键工具安装# 安装yum-utils工具包 yum install -y yum-utils # 添加Docker官方仓库 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo2. 依赖包下载与整理2.1 下载Docker二进制包访问Docker官方发布页面选择对应版本的静态二进制包。对于Docker 25.0.5下载链接通常为https://download.docker.com/linux/static/stable/x86_64/docker-25.0.5.tgz或对于ARM架构https://download.docker.com/linux/static/stable/aarch64/docker-25.0.5.tgz使用wget或curl下载到本地wget https://download.docker.com/linux/static/stable/x86_64/docker-25.0.5.tgz2.2 使用yum下载依赖包创建专门的目录存放依赖包并使用yum的downloadonly功能mkdir -p /root/docker_deps yum install -y --downloadonly --downloaddir/root/docker_deps \ --nogpgcheck --skip-broken \ containerd.io lvm2 device-mapper-persistent-data iptables-services依赖包清单containerd.io容器运行时核心组件device-mapper*存储驱动相关包lvm2*逻辑卷管理工具iptables*网络规则管理工具2.3 依赖包完整性检查下载完成后检查目录中应包含以下主要rpm包containerd.io-1.7.27-3.1.el9.x86_64.rpm device-mapper-1.02.202-6.el9.x86_64.rpm lvm2-2.03.28-6.el9.x86_64.rpm iptables-libs-1.8.10-11.el9_5.x86_64.rpm3. 离线环境部署流程3.1 传输文件到离线服务器将准备好的docker-25.0.5.tgz和docker_deps目录通过安全方式传输到目标服务器。常见传输方式包括物理介质传输U盘、移动硬盘内网安全传输工具如SFTP/SCP企业内部文件共享系统确保传输完成后验证文件完整性md5sum docker-25.0.5.tgz find docker_deps -type f -exec md5sum {} \;3.2 安装依赖包在离线服务器上按顺序安装所有依赖包# 安装containerd rpm -ivh docker_deps/containerd.io-*.rpm # 安装device-mapper和lvm2相关包 rpm -Uvh docker_deps/device-mapper-* docker_deps/lvm2-* # 安装iptables rpm -Uvh docker_deps/iptables-*安装顺序很重要必须先安装containerd.io再安装其他依赖包避免依赖关系问题。3.3 部署Docker二进制文件解压Docker二进制包并安装到系统路径tar -zxvf docker-25.0.5.tgz cp -a docker/* /usr/bin/验证可执行文件权限ls -l /usr/bin/dockerd /usr/bin/containerd4. 系统配置与服务管理4.1 创建systemd服务文件Docker需要三个关键的systemd服务单元文件containerd.service容器运行时服务docker.socketDocker API socket配置docker.serviceDocker主服务containerd.service配置cat /etc/systemd/system/containerd.service EOF [Unit] Descriptioncontainerd container runtime Documentationhttps://containerd.io Afternetwork.target local-fs.target [Service] ExecStartPre-/sbin/modprobe overlay ExecStart/usr/bin/containerd Typenotify Delegateyes KillModeprocess Restartalways RestartSec5 LimitNPROCinfinity LimitCOREinfinity LimitNOFILE1048576 TasksMaxinfinity OOMScoreAdjust-999 [Install] WantedBymulti-user.target EOF4.2 安全与网络配置关闭可能影响Docker运行的安全功能# 禁用SELinux sed -i s/^SELINUXenforcing/SELINUXdisabled/ /etc/selinux/config setenforce 0 # 停止并禁用firewalld systemctl stop firewalld systemctl disable firewalld # 创建docker用户组 groupadd docker4.3 启动并验证服务按顺序启动Docker相关服务systemctl daemon-reload systemctl enable --now containerd.service systemctl enable --now docker.socket systemctl enable --now docker.service验证服务状态systemctl status docker.service docker info5. 部署后验证与问题排查5.1 基础功能测试运行简单的容器测试Docker是否正常工作docker run --rm hello-world如果看到Hello from Docker!消息说明基本功能正常。5.2 常见问题解决方案问题1Failed to start Docker Application Container Engine检查日志获取详细信息journalctl -xe -u docker.service常见原因包括缺少依赖包存储驱动配置错误内核模块未加载问题2Cannot connect to the Docker daemon确保docker.socket服务已启动systemctl status docker.socket ls -l /var/run/docker.sock5.3 性能优化建议对于生产环境建议进行以下优化配置日志驱动和日志大小限制调整存储驱动为overlay2设置适当的cgroup驱动配置镜像加速器如果有内网镜像仓库# 示例daemon.json配置 mkdir -p /etc/docker cat /etc/docker/daemon.json EOF { exec-opts: [native.cgroupdriversystemd], log-driver: json-file, log-opts: { max-size: 100m }, storage-driver: overlay2 } EOF完成以上所有步骤后您的Rocky Linux 9.5离线环境就已经成功部署了Docker 25.0.5可以开始安全地运行容器化应用了。在实际部署过程中根据不同的硬件环境和安全要求可能还需要调整部分配置参数。

相关新闻