利用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 应用的高效性、可移植性与易维护性,为开发测试和教学提供了标准化实践范例。
相关推荐
Web极客码2 小时前
如何在WordPress中添加动态内容
服务器·前端·wordpress
tommyjiatong3 天前
WordPress电商展示站服务器迁移指南
服务器·数据库·wordpress
IT大白鼠5 天前
WordPress组合漏洞wp2shell技术分析报告
wordpress·安全漏洞·wp2shell 漏洞
Markk7 天前
Wordpress及第三方支持工具docker容器化搭建
wordpress
Linux-187411 天前
分布式链路追踪系统之docker-compose安装skywalking
云原生·docker-compose·skywalking·分布式链路追踪系统·应用程序性能监控
Web极客码12 天前
WordPress SEO优化:提升网站排名的13个关键步骤
服务器·seo·wordpress
tommyjiatong17 天前
解决 WordPress 必须带 index.php 才能访问及无法提交站点地图(Sitemap)的底层原理与方案
php·网站搭建·wordpress
Web极客码22 天前
如何在WordPress中通知用户他们的评论已获批准?
服务器·wordpress·评论
梦想的颜色1 个月前
【Docker部署插件】:使用 Docker 部署生产级 Kafka 完整版教程
安全·docker·中间件·kafka·消息队列·docker-compose·后端开发
钟智强1 个月前
我警告了 329 天
git·php·wordpress·webshell