我正在使用 Alpine 作为基础映像将 Docker 设置从 PHP 8.1 升级到 PHP 8.2。在 PHP 8.1 中,我使用以下设置成功配置了具有 JPEG 和 FreeType 支持的 GD 扩展:
RUN apk add --virtual build-dependencies --no-cache ${PHPIZE_DEPS} \
libjpeg-turbo-dev \
freetype-dev \
libpng-dev \
&& apk add --no-cache \
libjpeg-turbo \
freetype \
libpng \
&& docker-php-ext-configure gd --with-jpeg --with-freetype \
&& docker-php-ext-install -j$(nproc) gd \
&& apk del build-dependencies
这在 PHP 8.1 中完美运行。然而,在 PHP 8.2 中,安装了 GD 扩展,但 gd_info() 显示不支持 JPEG 或 FreeType。
我尝试调整 docker-php-ext-configure 参数但没有成功。 PHP 8.2 中 GD 的配置方式是否发生了变化,或者与 Alpine 的库存在兼容性问题?有什么建议可以解决这个问题吗?
我尝试调整 docker-php-ext-configure 参数但没有成功。
当然我们在这里无能为力,对吧?
PHP 8.2 中 GD 的配置方式是否发生了变化,或者与 Alpine 的库存在兼容性问题?
显然版本号的配置已经改变。 PHP 的次要版本是主要版本。
此外,您的容器配置显然存在兼容性问题。所以对问题的整个条件明确是肯定的。
注意认为其他人没有。再说一次,看起来我们在这里也无能为力,对吧?
有什么建议可以解决这个问题吗?
由于其他人无法重现,因此很难从您问题中的信息判断如何解决此问题。
我们通常会将构建置于版本控制之下以管理配置,然后构建并测试直到绿色。
这通常是最简单的方法,从头开始构建指令并练习 TCR(比较 如何练习 TCR(测试 && 提交 || 恢复)减少批量大小 (infoq.com))。