利用Docker-Compose部署WordPress

文章目录

  • [1. 实战概述](#1. 实战概述)
  • [2. 实战步骤](#2. 实战步骤)
    • [2.1 创建配置文件目录](#2.1 创建配置文件目录)
    • [2.2 创建Docker编排配置文件](#2.2 创建Docker编排配置文件)
    • [2.3 构建WordPress项目](#2.3 构建WordPress项目)
    • [2.4 安装WordPress](#2.4 安装WordPress)
    • [2.5 使用WordPress](#2.5 使用WordPress)
      • [2.5.1 登录WordPress](#2.5.1 登录WordPress)
      • [2.5.2 创建并发布文章](#2.5.2 创建并发布文章)
    • [2.6 查看wordpress数据库](#2.6 查看wordpress数据库)
    • [2.7 停止并移除WordPress容器不保留命名卷](#2.7 停止并移除WordPress容器不保留命名卷)
  • [3. 实战总结](#3. 实战总结)

1. 实战概述

  • 本实战通过 Docker Compose 部署 WordPress 与 MySQL 容器,配置端口映射、数据库用户及数据持久化,成功实现本地博客系统的搭建、安装、文章发布与数据库验证,并演示了使用 docker-compose down --volumes 彻底清理环境的完整流程。

2. 实战步骤

2.1 创建配置文件目录

  • 执行命令:mkdir wordpress_config

2.2 创建Docker编排配置文件

  • 执行命令:cd wordpress_config

  • 执行命令:notepad docker-compose.yml,在记事本窗口里编写配置文件

    yml 复制代码
    services:
       db:
         image: mysql:8.0
         volumes:
           - db_data:/var/lib/mysql
         restart: always
         ports:
           - "3308:3306"
         environment:
           MYSQL_ROOT_PASSWORD: 903213
           MYSQL_DATABASE: wordpress
           MYSQL_USER: wordpress
           MYSQL_PASSWORD: 903213
       wordpress:
         depends_on:
           - db
         image: wordpress:latest
         ports:
           - "8000:80"
         restart: always
         environment:
           WORDPRESS_DB_HOST: db:3306
           WORDPRESS_DB_USER: wordpress
           WORDPRESS_DB_PASSWORD: 903213
           WORDPRESS_DB_NAME: wordpress
    volumes:
        db_data: {}
  • 配置说明 :此配置通过 Docker Compose 启动一个 WordPress 网站和 MySQL 数据库服务。数据库(MySQL 8.0)映射宿主机3308端口,设置root密码及wordpress专用用户。WordPress容器连接数据库,并通过宿主机8000端口提供服务。数据卷db_data用于持久化数据库数据,确保数据在容器重启后依然保留。所有服务均设为自动重启,以保证高可用性。

2.3 构建WordPress项目

  • 执行命令:docker-compose up -d

  • 结果说明 :执行 docker-compose up -d 后,Docker 成功创建并启动了 WordPress 项目的所有组件:网络、数据卷、MySQL 容器和 WordPress 容器。四个任务均顺利完成,服务已运行在后台,端口映射生效(3308:3306 和 8000:80),系统可正常访问数据库和 Web 服务,部署流程成功完成。

  • 执行命令:docker ps -a --filter "name=wordpress"

  • 结果说明 :执行 docker ps -a --filter "name=wordpress" 后,成功显示名称包含"wordpress"的容器。结果显示 WordPress 和 MySQL 容器均已启动并运行正常,状态为 Up,端口映射正确(8000:80 和 3308:3306),服务部署成功,可通过浏览器访问 http://localhost:8000 进行 WordPress 安装与使用。

2.4 安装WordPress

  • 在浏览器里访问http://localhost:8000/wp-admin/install.php
  • 在列表框里选择简体中文
  • 单击【继续】按钮,在窗口里设置相应信息
  • 单击【安装WordPress】按钮

2.5 使用WordPress

2.5.1 登录WordPress

  • 单击【登录】超链接,输入用户名和密码
  • 单击【登录】按钮

2.5.2 创建并发布文章

  1. 查看文章列表
  2. 查看指定文章内容
  3. 写一篇文章
    • 返回文章列表页面

    • 单击【写文章】按钮

    • 添加标题和文章内容

    • 单击【发布】按钮

    • 单击【发布】按钮

    • 查看文章列表

2.6 查看wordpress数据库

  • 创建数据库连接 - WordPressMySQL
  • 查看wordpress数据库
  • 查看wp_posts表记录

2.7 停止并移除WordPress容器不保留命名卷

  • 执行命令:docker-compose down --volumes
  • 结果说明 :执行 docker-compose down --volumes 后,Docker 成功停止并删除了 WordPress 和 MySQL 容器、默认网络以及数据卷 wordpress_config_db_data。该操作彻底清理了所有相关资源,包括持久化数据,适用于环境重置或完全卸载场景,确保无残留文件和配置。

3. 实战总结

  • 本次实战基于 Docker Compose 成功部署了 WordPress 与 MySQL 8.0 的完整应用环境。通过合理配置 docker-compose.yml,实现了数据库初始化、服务依赖管理、端口映射(3308:3306 和 8000:80)及数据持久化。系统启动后,通过浏览器顺利完成 WordPress 安装、中文设置、用户登录、文章创建与发布等核心操作,并在 Navicat 中验证了数据库中 wp_posts 表的数据写入,确认前后端数据一致性。最后,使用 docker-compose down --volumes 命令彻底清除容器、网络和数据卷,实现环境的干净卸载。整个过程展示了容器化部署 Web 应用的高效性、可移植性与易维护性,为开发测试和教学提供了标准化实践范例。
相关推荐
2601_965798471 天前
Salient Theme Setup Guide for Fast Creative WordPress Sites
数据库·web3·php·wordpress
智码看视界3 天前
Day53-Docker:Dockerfile最佳实践 + 多阶段构建 + docker-compose编排
java·spring boot·docker·docker-compose·dockerfile·容器化部署·多阶段构建
2601_965798473 天前
Boutique Business Consulting WordPress Architecture & SEO Setup
android·theme·wordpress
2601_965798474 天前
Plastic Surgery Clinic Web Setup: Deploying Rejuvita WordPress
php·theme·wordpress
2601_965798474 天前
Contractor Web Setup: Deploying Bathrooms & Kitchens Theme Fast
前端·web3·php·wordpress
e6zzseo11 天前
wordpress独立站seo怎么做才有效
seo·wordpress·独立站·内容优化·外链建设
Web极客码13 天前
如何让用户订阅WordPress评论?提升用户互动的有效策略
运维·服务器·wordpress
fobwebs13 天前
Wordpress Xstore 主题安装Elementor Pro 后找不到某些Elements 组件的解决方法
element·wordpress·form·xstore·pro elements·elementor pro
代龙涛14 天前
WordPress sidebar.php 侧边栏开发教程
开发语言·php·wordpress
代龙涛15 天前
WordPress header.php 与 footer.php 模板结构详解
开发语言·php·wordpress