通过 Docker 镜像极速部署带有 Memcached 的 WordPress

之前我们介绍了零基础也能学会,使用宝塔面板一键部署 WordPress,并且在宝塔面板如何开启 Memcached,加快 WordPress 运行,但是还有一些同学觉得繁琐,那么今天我们教大家一个更简单快速的方法,使用定制版 Docker 镜像,极速部署带有 Memcached 的 WordPress。

定制 Docker 镜像

所以首先我们基于 WordPress 官方的定制化镜像,然后集成了 OPcache​ + Memcached​ 缓存拓展,最后添加 WPJAM-Basic 插件(一键式全站优化),还支持通过环境变量配置PHP上传文件大小等操作;

这样就可以实现让你体验 Docker 的“秒级”部署,同时享受 Memcached 缓存的 “加速”体验 ~

开源地址:https://github.com/verkyer/wordpress-mc

由于官方镜像不含所需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 示例,根据自己的需求修改密码,然后启动!

点击一下上面的「确定」确定,这样就装完啦🙂~ 是不是很快?

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

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

设置反向代理

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

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

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

申请一下SSL证书

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

数据库和文件设置

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

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

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

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

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

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


©我爱水煮鱼,本站推荐使用的主机:阿里云,国外主机建议使用BlueHost

本站长期承接 WordPress 优化建站业务,请联系微信:「chenduopapa」。