wordpress容器内安装php扩展没有像安装apache扩展那样改个文件那么容易,但安装步骤也算简单。
客户端:
这里演示的mecached php扩展的安装也很简单,登入portainer的容器命令行窗口,执行:
apt-get update && apt-get install -y libmemcached-dev zlib1g-dev \
&& pecl install memcached \
&& docker-php-ext-enable memcached
在*/conf.d/ 文件夹下(找不到路径可以用find命令搜索),可以看到多了一个名为 docker-php-ext-memcached.ini 的文件,打开可以看到
extension=memcached
改成
extension=memcached.so
服务端:
然后可以部署memcached服务端,有两个选择:
1.宿主机,可以选择宝塔安装,然后设置监听IP为0.0.0.0,放行端口11211,另外可以安装宝塔中的系统防火墙,指定只有wordpress容器才能访问11211端口。
2.在wordpress容器中安装,不需要更改设置,装完就能直接用。
wordpress使用,我这直接用WPJAM Basic插件,
WPJAM Basic 插件已经集成 Memcached 的功能,将 wpjam-basic/template/ 目录下的 object-cache.php 文件复制到 wp-content 目录下,注意不是 wp-content/plugins/。
在此基础上,如果不是容器内部署memcached服务端,那么需要更改object-cache.php文件内的127.0.0.1为容器的网关IP地址(在portainer中能看到)。
以上!
请问wordpress报错这个怎么办?
“Your PHP installation appears to be missing the MySQL extension which is required by WordPress.
Please check that the mysqli PHP extension is installed and enabled.
If you are unsure what these terms mean you should probably contact your host. If you still need help you can always visit the WordPress support forums.”
@Fred wordpress官方的容器装完怎么会出现缺少扩展呢?这个我确实没遇到过,可以参见https://hub.docker.com/_/php/ 里面的How to install more PHP extensions 部分
大佬,我安装完,结果wordpress容器直接挂了怎么办
@Fred 用的是portainer吗,可以看日志,是不是因为端口占用导致无法启动?
大佬你好,请问*/conf.d/ 文件夹是在哪里搜索?wordpress的容器吗?
@Fred 是的,在容器内搜索