docker安装php8.2扩展
2025-08-29 15:37:01
通过 Dockerfile 构建自定义镜像(持久化扩展,推荐生产环境)
通过 Dockerfile 构建包含所需扩展的 PHP 镜像,确保容器重启或重建后扩展依然存在。
1、在本地创建Dockerfile文件:
# 基于官方PHP 8.2-fpm镜像
FROM php:8.2-fpm
# 安装系统依赖
RUN apt-get update && apt-get install -y \
libzip-dev \
unzip \
git \
&& rm -rf /var/lib/apt/lists/*
# 安装PHP扩展
RUN set -ex \
# 安装fileinfo(内置扩展)
&& docker-php-ext-install fileinfo \
# 安装igbinary
&& pecl install igbinary-3.2.14 \
&& docker-php-ext-enable igbinary \
# 安装redis(依赖igbinary)
&& pecl install redis-6.0.2 \
&& docker-php-ext-enable redis
注意:扩展版本需与 PHP 8.2 兼容,可通过PECL 官网查询最新兼容版本。
2、构建自定义镜像:
docker build -t myphp82:with-extensions .
3、使用新镜像启动容器:
docker run -d \
--name php82-with-ext \
-v /本地代码目录:/var/www/html \
myphp82:with-extensions
4、验证扩展:
docker exec -it php82-with-ext php -m | grep -E 'redis|fileinfo|igbinary'