为Wordpress官方Docker镜像添加Memcached支持

发布于 2024-02-01  183 次阅读


AI 摘要

文章介绍了为WordPress官方Docker镜像添加Memcached支持的步骤。因为WordPress官方Docker镜像的php没有安装Memcached扩展,所以需要对镜像进行修改。文章详细介绍了在已有镜像上安装WordPress和Memcached的步骤,然后进入容器进行相关配置和安装依赖,最后通过修改配置文件来实现Memcached的支持。最后,文章建议重新启动WordPress容器,并在后台查看Memcached是否正常工作。

起因

由于宝塔的bug太多,我已经在前阵子更换为了1panel的面板,由于1panel的应用都是已docker形式部署的,但是WordPress官方的docker镜像的php没有安装MemcachedRedis等扩展。我之前写过一篇文章:优化WordPress站点教程,提高网站响应速度,就提到过,当动态网站存在大量访问时,数据库缓存能大大提高响应的速度。

docker操作步骤

  • 本文以在原来的镜像上进行修改从而达到支持Memcached的效果,并不是构建镜像的教程

安装WordPress和Memcached

这步就不用多说了,如果使用1panel直接应用商店安装即可,也可以使用docker-cli或者docker-compose安装

配置WordPress

进入docker容器

如果使用1panel,在 容器 - 对应的容器(一般以1Panel-wordpress开头) - 终端 - 连接

打开docker终端,进入docker

也可以使用命令

docker exec -it 容器id /bin/bash

进入容器(容器id可以使用 docker ps 查看)

下载源码

mkdir -p /usr/src/php/ext/
curl -o /usr/src/php/ext/memcached.tar https://pecl.php.net/get/memcached-3.2.0.tgz

可以在 https://pecl.php.net/package/memcached 选择不同的版本安装

移动位置

tar zxvf /usr/src/php/ext/memcached.tar -C /usr/src/php/ext/
mv /usr/src/php/ext/memcached-3.2.0 /usr/src/php/ext/memcached
rm -f /usr/src/php/ext/memcached.tar

/usr/src/php/ext/ 这个是php拓展的目录

安装依赖

apt update
apt install -y libmemcached-dev zlib1g-dev libssl-dev

如果在国内的话下载速度会比较慢,可以考虑换源

sed -i 's/deb.debian.org/mirrors.ustc.edu.cn/g' /etc/apt/sources.list.d/debian.sources

编译安装

docker-php-ext-install memcached
编译成功

检查拓展是否成功安装 php -m | grep mem

memcached成功加载

修改配置文件

我是使用的WPJAM BASIC插件,安装教程可以查看我之前的文章,需要修改 wordpress/wp-content/object-cache.php

大概在464行左右,将原本的localhost修改为你安装Memcached的ip地址(如果是用docker-compose或者1panel安装的可以直接使用主机名memcached

修改主机名

查看结果

重启WordPress容器,在后台WPJAM BASIC查看memcached是否正常工作

memcached成功工作