给 Docker 容器里的 PHP 安装 Extensions

站点相关 2020-04-23 219℃ 1 0

需求

TePass 插件升级后使用了 SourceGuardian 来保护代码,所以我不得不安装 SourceGuardian 的 Loader。

思路

给 Docker 容器里的 PHP 添加扩展很简单,但是我不想容器里添加这种一般用不到的扩展。所以我只好改动 Docker 容器的脚本,在启动时自动加载特定目录下第三方的库。

我是用的容器是自己定制的 Alpine +Caddy + PHP 环境。有启动用的entrypoint.sh,直接在脚本开头加入

这样容器启动的时候脚本就会遍历/www/php-extensions这个目录,把extensions加到php.ini中,这样也方便了对这个第三方库的更换。

过程

修改过程发现腾讯云无法从国外网站拉取 Alpine 的软件源,我也懒得针对性处理了,直接在国外的服务器上构建。然后导出到腾旭云上再导入就可以了。

导出

docker save -o web.tar.gz benzbrake/web

导入

docker load -i web.tar.gz

结果

升级 TePass 后发现用不了了。。。你们看下面。
上边顺带测试一下刚增加的回复可见。

没东西,就是测试一下

评论 (1)

Top