非常好 👍 阿杰。
下面我一步步教你在 Red Hat Enterprise Linux 9(RHEL 9)快速安装 Docker 并部署一个容器应用(示例:Nginx)
整个过程只需十几分钟,非常适合云端(如阿贝云)服务器的初始化部署笔记使用。


🧭 一、环境说明

项目内容
操作系统Red Hat Enterprise Linux 9.x
权限要求root 或具备 sudo 权限
网络要求能访问互联网(Docker 官方仓库)
演示部署Nginx 容器(示例 Web 服务)

⚙️ 二、安装 Docker(官方推荐方式)

RHEL 9 默认软件源中不包含 Docker,需要使用 Docker 官方仓库(repo)

1️⃣ 卸载旧版本(如果系统自带 Podman 或 Moby)

sudo dnf remove podman buildah docker docker-engine docker.io -y

💡 RHEL 9 默认使用 Podman(Red Hat 自家的容器工具),但这里我们切换到 Docker。


2️⃣ 添加 Docker 官方仓库

sudo dnf -y install dnf-plugins-core
sudo dnf config-manager --add-repo https://download.docker.com/linux/rhel/docker-ce.repo


3️⃣ 安装 Docker 引擎

sudo dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin -y

说明:

  • docker-ce 是 Docker 引擎
  • docker-ce-cli 是命令行工具
  • containerd.io 是容器运行时
  • docker-compose-plugin 支持 Compose v2

4️⃣ 启动并设置开机自启

sudo systemctl enable --now docker


5️⃣ 检查安装状态

sudo systemctl status docker

出现如下内容表示成功运行:

Active: active (running) since ...


6️⃣ 测试 Docker 是否可用

sudo docker run hello-world

如果输出包含:

“Hello from Docker!”

就代表 Docker 引擎安装成功 ✅


🚀 三、部署一个示例容器(以 Nginx 为例)

1️⃣ 拉取镜像

sudo docker pull nginx


2️⃣ 运行容器

sudo docker run -d -p 80:80 --name my-nginx nginx

参数解释:

参数说明
-d后台运行容器
-p 80:80映射宿主机端口 80 到容器内部端口 80
--name my-nginx给容器命名为 my-nginx

3️⃣ 查看容器状态

sudo docker ps

输出示例:

CONTAINER ID   IMAGE   COMMAND   STATUS   PORTS               NAMES
1a2b3c4d5e6f   nginx   ...       Up       0.0.0.0:80->80/tcp  my-nginx


4️⃣ 测试访问

在浏览器或命令行中访问云服务器的 IP:

http://<你的服务器公网IP>

看到 “Welcome to nginx!” 即部署成功 🎉


🛠️ 四、常用 Docker 命令速查表

操作命令
启动 Dockersudo systemctl start docker
停止 Dockersudo systemctl stop docker
查看容器列表sudo docker ps -a
停止容器sudo docker stop my-nginx
启动容器sudo docker start my-nginx
删除容器sudo docker rm my-nginx
删除镜像sudo docker rmi nginx
查看日志sudo docker logs my-nginx

🔒 五、防火墙与安全组设置(若网页访问不了)

若你在云端(如阿贝云)使用 RHEL 9,需要确认端口 80 已放行。

在系统中放行端口:

sudo firewall-cmd --permanent --add-port=80/tcp
sudo firewall-cmd --reload

在云服务商控制台放行:

如果服务器有安全组(Security Group)规则,也要在控制台里打开端口 80。


💡 六、可选:部署自己的应用容器

你可以把上面的 Nginx 替换为任意 Web 服务,例如:

  • Flask / FastAPI(Python)
  • Node.js / Express
  • Spring Boot(Java)
  • Redis / MySQL / PostgreSQL 等数据库容器

例如部署 Python Flask:

sudo docker run -d -p 5000:5000 --name flask-demo tiangolo/uwsgi-nginx-flask:python3.8


✅ 七、总结

步骤内容
1添加 Docker 官方仓库
2安装并启动 Docker
3运行测试镜像
4部署 Nginx 服务
5开放防火墙端口
6可替换部署自定义服务