上回的全流程安装 WordPress + Memcached 还觉得太繁琐?别担心,带你用 Docker 极速部署 🙂~

项目介绍

WordPress-MC:是博主基于 WordPress 官方的定制化镜像,集成了 OPcache​ + Memcached​ 缓存拓展,添加 WPJAM-Basic 插件(一键式全站优化),支持通过环境变量配置PHP上传文件大小等操作;

让你体验 Docker 的“秒级”部署,同时享受 Memcached 缓存的 “加速”体验 ~

由于官方镜像不含所需PHP拓展,故有了此项目,更适合中国宝宝体质!喜欢的点点⭐️ Star!

⚠ 目前为初版镜像,已在多台机器测试(当然也不排除有些许bug);

如果你是生产环境请多备份!或者是更推荐 PHP 常规部署

Docker Compose 示例

services:
  wordpress:
    image: verky/wordpress-mc:latest
    restart: unless-stopped
    ports:
      - "8080:80" #wp的访问端口(按需修改)
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_NAME: wordpress #数据库名
      WORDPRESS_DB_USER: wordpress #数据库用户
      WORDPRESS_DB_PASSWORD: wordpress #数据库密码(自己修改)
      #PHP 性能配置(按需开启、修改)
      #UPLOAD_MAX_FILESIZE: 128M
      #POST_MAX_SIZE: 128M
      #MEMORY_LIMIT: 512M
      #PHP_MAX_EXECUTION_TIME: 900
    volumes:
      - ./wordpress:/var/www/html #wp文件路径
    depends_on:
      - db
      - memcached
    networks:
      - wordpress_network

  db:
    image: mysql:5.7.44
    restart: unless-stopped
    environment:
      MYSQL_DATABASE: wordpress #数据库名
      MYSQL_USER: wordpress #数据库用户
      MYSQL_PASSWORD: wordpress #数据库密码(自己修改)
      MYSQL_ROOT_PASSWORD: rootpassword #数据库root密码
    volumes:
      - ./db:/var/lib/mysql #数据库映射路径
    networks:
      - wordpress_network

  memcached:
    image: memcached:alpine
    restart: unless-stopped
    command: memcached -m 64
    networks:
      - wordpress_network

networks:
  wordpress_network:
    driver: bridge

环境变量、数据映射

如果你不了解、不做特别修改,都可以先不管他,按照流程来就行🙂

WP 数据库连接

  • WORDPRESS_DB_HOST:数据库主机地址(如果已有数据库,不用编排的请修改)

  • WORDPRESS_DB_NAME​:数据库名称

  • WORDPRESS_DB_USER​:数据库用户名

  • WORDPRESS_DB_PASSWORD​:数据库密码

PHP 性能配置(按需添加)

  • UPLOAD_MAX_FILESIZE:单个文件上传的最大大小限制(默认:64M)

  • ​POST_MAX_SIZE​:整个 POST 请求的最大大小限制(默认:64M)

  • MEMORY_LIMIT​:PHP 脚本运行时的最大内存限制(默认:256M)

  • PHP_MAX_EXECUTION_TIME:脚本最大执行时间(秒)(默认:600)

数据持久化

  • ​./wordpress​:WordPress 文件目录

  • ​./db​:MySQL 数据库文件目录

如果你是全新安装且没特别要求,修改下数据库账户密码​就可以启动了

目录默认是当前文件夹下的,数据库也没有映射端口出来,只能编排内访问🙂

安装 WordPress

【Docker】-【容器编排】-【添加容器编排】

复制上面的 Docker Cpmpose 示例,按需修改密码,然后启动!

wp-docker-yaml.png

这样就装完啦🙂~ 是不是很快?

wp-3-docker.png

浏览器访问:http://ip+8080​ 就可以看到初始化界面了

先不要进行初始化,我们还没有设置域名反代!

ip-wp-install.png

设置反向代理

域名解析后,添加反向代理(下面2个入口都可以进行添加)

  • 【网站】-【反向代理】:更推荐从这里添加(也是常规反代的流程)!

  • 【Docker】-【网站】:这里是为了更便捷的添加,直接可以选容器。

wp-fandai1.png

wp-fandai2.png

申请一下SSL证书

wp-https.png

访问域名,接下来就不用说了吧🙂?

wp-install.png

数据库管理

由于是 Docker 启动的,无法在宝塔直接看到数据库,我们需要添加一下远程数据库

获取数据库容器的内网地址:

mysql-yc1.png

添加远程数据库,并同步:

mysql-yc2.png

mysql-yc3.png

然后就出现了~ 这样就可以进行备份、导入导出的操作啦~

mysql-yc4.png

文件管理

由于是 Docker 搭建 + 反向代理的网站,所以网站目录是没有内容的(只有反代的参数)

需要进入到编排目录,就是一样的操作啦~

wp-docker-mulu.png

至此教程结束~ 🙂