| 123456789101112131415161718192021222324252627282930313233343536 |
- FROM php:7.4-fpm AS crmeb_php
- WORKDIR "/var/www"
- # 1. 替换国内 Debian 镜像源(加速依赖下载)
- RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list && \
- sed -i 's/security.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list
- # 2. 安装所有依赖(包括编译 pcntl 所需的工具链,语法正确!)
- RUN apt-get update && \
- apt-get -y --no-install-recommends install \
- # 编译 pcntl 必需的工具链(正确添加到 apt-get install 列表中)
- gcc \
- make \
- autoconf \
- libc-dev \
- procps \
- # 其他扩展依赖(原有)
- libfreetype6-dev \
- libjpeg62-turbo-dev \
- libpng-dev \
- libzip-dev && \
- # 3. 编译安装 pcntl 扩展(显式启用,避免隐式失败)
- docker-php-ext-configure pcntl --enable-pcntl && \
- docker-php-ext-install pcntl && \
- docker-php-ext-install mysqli pdo pdo_mysql && \
- # 4. 安装其他业务扩展
- docker-php-ext-configure gd --with-freetype --with-jpeg && \
- docker-php-ext-install -j$(nproc) bcmath mysqli gd zip && \
- # 5. 安装 redis 扩展
- pecl install redis-5.3.7 && \
- docker-php-ext-enable redis && \
- # 6. 清理缓存,减少镜像体积
- apt-get clean && \
- apt-get autoremove -y && \
- rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|