PHP的容器比较复杂,因为PHP还要安装各种扩展,我们这里以GD、redis为例。

php目录下还准备好了php配置文件php.ini以及php-fpm.conf,基础镜像我们选择的是PHP 5.6-FPM,这同样是一个Debian Jessie镜像。官方比较亲切的在镜像内部准备了一个docker-php-ext-install指令,可以快速安装如GD、PDO等常用扩展。所有支持的扩展名称可以通过在容器内运行docker-php-ext-install获得。

FROM php:5.6-fpm
#复制php和php-fpm配置文件到相应目录
ADD php.ini-development    /usr/local/etc/php/php.ini
ADD php-fpm.conf    /usr/local/etc/php-fpm.conf
#安装扩展所需要的依赖、安装iconv\mycrypt\gd扩展
RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng12-dev \
    && docker-php-ext-install iconv mcrypt \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install gd

ENV PHPREDIS_VERSION 2.2.7
#安装redis扩展
RUN curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/$PHPREDIS_VERSION.tar.gz \
    && tar xfz /tmp/redis.tar.gz \
    && rm -r /tmp/redis.tar.gz \
    && mv phpredis-$PHPREDIS_VERSION /usr/src/php/ext/redis \
    && docker-php-ext-install redis

WORKDIR /opt
#RUN usermod -u 1000 www-data

VOLUME ["/opt"]

CMD ["php-fpm"]

 安装过程:

【Docker学习之六】PHP容器

OK,现在我们的PHP5.6-fpm镜像已经完成了。

相关文章:

  • 2021-12-20
  • 2022-12-23
  • 2021-10-23
  • 2022-02-27
  • 2022-01-18
  • 2021-10-18
  • 2022-12-23
  • 2021-06-06
猜你喜欢
  • 2022-02-11
  • 2022-02-25
  • 2021-12-27
  • 2022-02-20
  • 2022-12-23
  • 2021-11-26
  • 2021-11-12
相关资源
相似解决方案