内容纲要
根据WordPress 6.2需要的扩展,我们需要在上面的Dockerfile中添加以下扩展:
- curl
- mysqli
- xml
- gd
- zip
更新后的Dockerfile如下所示:
FROM php:7.4.33-fpm-alpine
# 安装必要的依赖库
RUN apk update && \
apk add --no-cache libpng-dev libjpeg-turbo-dev freetype-dev libzip-dev && \
apk add --no-cache --virtual .build-deps $PHPIZE_DEPS zlib-dev && \
apk add --no-cache --virtual .gd-build-deps \
freetype-dev \
libjpeg-turbo-dev \
libpng-dev \
libwebp-dev \
libxpm-dev && \
# 安装扩展
RUN docker-php-ext-install curl mysqli xml zip && \
docker-php-ext-configure gd \
--with-freetype=/usr/include/ \
--with-jpeg=/usr/include/ \
--with-webp=/usr/include/ \
--with-xpm=/usr/include/ \
--enable-gd && \
docker-php-ext-install gd && \
# 清理缓存和多余的依赖库
RUN apk del .build-deps .gd-build-deps && \
rm -rf /var/cache/apk/*
WORKDIR /var/www/html
EXPOSE 9000
这个Dockerfile会先基于php:7.4.33-fpm-alpine镜像构建一个新镜像,然后安装curl、mysqli、xml、zip和gd扩展。为了安装gd扩展,我们需要先安装一些依赖库,并使用docker-php-ext-configure
命令对gd进行配置。最后清理缓存和多余的依赖库,以减小镜像的大小。