Docker构建完整支持WordPress的PHP8.5镜像

作者:

FROM php:8.5-fpm-alpine

# 配置国内镜像
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

# 安装构建扩展相关依赖
RUN apk add --no-cache --update --virtual .build-deps $PHPIZE_DEPS

# MySQL
RUN docker-php-ext-install pdo_mysql mysqli \
  && docker-php-ext-enable pdo_mysql mysqli

# 常用扩展
RUN docker-php-ext-install pcntl exif bcmath sysvsem \
    && docker-php-ext-enable exif bcmath pcntl sysvsem

# apcu
RUN pecl install apcu && docker-php-ext-enable apcu

# zip扩展
RUN apk add --no-cache --update libzip=1.11.4-r1 libzip-dev=1.11.4-r1 unzip \
  && docker-php-ext-install zip \
  && docker-php-ext-enable zip

# redis
RUN pecl install https://pecl.php.net/get/redis \
  && docker-php-ext-enable redis

# intl
RUN apk add --no-cache --update icu icu-dev \
  && docker-php-ext-configure intl \
  && docker-php-ext-install intl \
  && docker-php-ext-enable intl

# imagick
RUN apk add --no-cache --update imagemagick-dev imagemagick-svg \
 && pecl install https://pecl.php.net/get/imagick \
 && docker-php-ext-enable imagick

# gd
RUN apk add --no-cache --update libpng libpng-dev libavif-dev libjpeg-turbo-dev freetype-dev freetype libjpeg-turbo libavif  \
  && docker-php-ext-configure gd --with-freetype --with-jpeg --with-avif \
  && docker-php-ext-install gd \
  && docker-php-ext-enable gd

# igbinary 提高序列化性能
RUN pecl install igbinary \
  && docker-php-ext-enable igbinary

# WordPress建议
# 与 PHP 的日期和时间函数一起使用的时区数据库
RUN pecl install timezonedb

# wordpress建议安装
# Shmop 是一组易于使用的函数,允许 PHP 读取、写入、创建和删除 Unix 共享内存段。
RUN docker-php-ext-install shmop

# ffmpeg nextcloud需要视频转码时启用
# RUN apk add --no-cache ffmpeg

# gmp nextcloud使用加密时使用
# RUN apk add --no-cache --update gmp-dev \
# && docker-php-ext-install gmp \
# && docker-php-ext-enable gmp

# pgsql,如果需要使用postgreSQL数据库
# RUN apk add --no-cache --update libpq-dev postgresql-dev \
#   && docker-php-ext-install pdo_pgsql \
#   && docker-php-ext-enable pdo_pgsql

# 删除构建依赖
RUN apk del --no-network .build-deps

# 配置文件,默认未启用配置文件
RUN cp /usr/local/etc/php/php.ini-production /usr/local/etc/php/php.ini

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注