方案一:使用 podman-compose(推荐)

这个方案的优点是可以直接使用熟悉的 docker-compose.yml 文件,配置清晰,便于日后维护和迁移。

1. 安装 Podman 和 podman-compose

首先,确保你的 Rocky Linux 系统已更新,并安装 Podman。

sudo dnf update -y
sudo dnf install podman -y

 

安装完成后,可以验证版本:

podman --version

 

接着安装 podman-compose。它是一个 Python 工具,用 pip3 安装最为方便。(我是输入podman-compose命令时,提示没有是否安装,提示下安装的)

sudo dnf install python3-pip -y
sudo pip3 install podman-compose
验证安装: podman
-compose --version

 

2. 配置镜像加速(可选但推荐)

为了加速镜像下载,可以配置国内镜像源。编辑 /etc/containers/registries.conf 文件:

sudo vi /etc/containers/registries.conf

 

在文件末尾添加以下内容:(我用的不是这个)

unqualified-search-registries = ["docker.io"]

[[registry]]
prefix = "docker.io"
location = "docker.io"

[[registry.mirror]]
location = "hub-mirror.c.163.com"
[[registry.mirror]]
location = "mirror.baidubce.com"
[[registry.mirror]]
location = "ustc-edu-cn.mirror.aliyuncs.com"

 

3. 创建项目目录和 docker-compose.yml 文件

创建一个专门的项目目录,并进入该目录:

mkdir ~/wordpress && cd ~/wordpress

 

创建并编辑 docker-compose.yml 文件:

vi docker-compose.yml

 

将以下内容粘贴到文件中。请务必修改其中的数据库密码:

version: "3.8"

services:
  web:
    image: wordpress:latest
    restart: always
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wordpress
      WORDPRESS_DB_PASSWORD: your_mysql_password      # 修改此密码
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wordpress_data:/var/www/html:z

  db:
    image: mariadb:10.5
    ports:
      - "13306:3306"
    restart: always
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wordpress
      MYSQL_PASSWORD: your_mysql_password             # 与上方密码保持一致
      MYSQL_ROOT_PASSWORD: your_root_password         # 修改此 root 密码
    volumes:
      - db_data:/var/lib/mysql:z

volumes:
  wordpress_data:
  db_data:

 

4. (重要)处理 SELinux 问题

Rocky Linux 默认启用 SELinux,这可能导致容器无法读写挂载的卷-。如果后续遇到权限问题,可以在 volumes 挂载路径后添加 :Z 或 :z 选项-24

修改 docker-compose.yml 中的 volumes 部分:

volumes:
  - wordpress_data:/var/www/html:Z
  - db_data:/var/lib/mysql:Z
  • :Z 表示该目录仅供此容器专用。
  • :z 表示该目录可被多个容器共享。

5. 启动服务

在 docker-compose.yml 文件所在目录下,执行以下命令启动服务:

 

podman-compose up -d

-d 参数表示在后台运行。

6. 配置防火墙

WordPress 容器映射到了宿主机的 8080 端口,需要在防火墙中开放它:

 

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

7. 访问 WordPress

打开浏览器,访问 http://你的服务器IP地址:8080,即可看到 WordPress 的安装界面,按照提示完成初始化设置。

8. 常用管理命令(podman -h更多详情)

podman-compose ps          # 查看服务状态
podman-compose logs        # 查看日志
podman-compose stop        # 停止服务
podman-compose start       # 启动服务
podman-compose down        # 停止并移除容器

 

posted on 2026-08-16 03:41  wtsgtc  阅读(22)  评论(0)    收藏  举报