利用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极客码5 天前
加快WooCommerce性能
服务器·wordpress·网站
豆豆7 天前
WordPress至PageAdmin CMS跨平台迁移技术指南:应对环境约束的系统化过渡方案
cms·wordpress·建站系统·内容管理系统·网站管理系统·pageadmin
木雷坞7 天前
Jellyfin Docker Compose 媒体库为空排查:volume、PUID/PGID 和挂载路径
docker·docker-compose·jellyfin
く成哦9 天前
部署Apache Gravitino项目及使用教程
jupyter·docker-compose·apache·trino·playground·gravitino
Web极客码12 天前
Akismet对WordPress防垃圾评论
服务器·搜索引擎·wordpress
尘中客14 天前
【2026最新】如何用 WordPress 零代码搭建八字排盘/紫微斗数网站(附免费开源插件)
php·api·wordpress·建站源码·网站引流
WordPress学习笔记15 天前
B2B独立站与B2C独立站的主题模板选择的对不对很重要
wordpress·gracetheme·wodetheme
WordPress学习笔记15 天前
一般创业公司官网用WordPress主题模板完全足够
wordpress
lilihuigz16 天前
WordPress 7.0 AI基础设施详解:能力API、AI客户端与MCP适配器如何重塑插件生态
人工智能·wordpress·独立站
CSharp精选营17 天前
2026个人博客建站指南:这4种方案总有一款适合你
.net·wordpress·个人博客·独立站·githubpages·建站教程