方案一:使用 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 # 停止并移除容器
浙公网安备 33010602011771号