Dockerfile 文件中添加 redis 扩展

我的 dockerfile 文件如下

FROM php:7.1.8-apache

ENV TZ=Asia/Shanghai
ENV APACHE_LOG_DIR /var/log/apache2_log
COPY sources.list /etc/apt/sources.list

RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng12-dev \
        libpq-dev \
        g++ \
        libicu-dev \
        libxml2-dev \
    && docker-php-ext-install -j$(nproc) iconv mcrypt \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install mbstring \
    && docker-php-ext-install zip \
    && docker-php-ext-install pdo pdo_mysql mysqli opcache \
    && pecl install xdebug \
    && docker-php-ext-enable xdebug \
    && a2enmod rewrite
RUN a2enmod ssl

这个 dockerfile 文件 build 完之后是没有 redis 扩展的

Dockerfile 文件中添加 redis 扩展_第1张图片

我们在 dockerfile 文件中最后加入

RUN pecl install -o -f redis \
&&  rm -rf /tmp/pear \
&&  docker-php-ext-enable redis

加入后完整的 dockerfile 文件如下:

FROM php:7.1.8-apache

ENV TZ=Asia/Shanghai
ENV APACHE_LOG_DIR /var/log/apache2_log
COPY sources.list /etc/apt/sources.list

RUN apt-get update && apt-get install -y \
        libfreetype6-dev \
        libjpeg62-turbo-dev \
        libmcrypt-dev \
        libpng12-dev \
        libpq-dev \
        g++ \
        libicu-dev \
        libxml2-dev \
    && docker-php-ext-install -j$(nproc) iconv mcrypt \
    && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \
    && docker-php-ext-install -j$(nproc) gd \
    && docker-php-ext-install mbstring \
    && docker-php-ext-install zip \
    && docker-php-ext-install pdo pdo_mysql mysqli opcache \
    && pecl install xdebug \
    && docker-php-ext-enable xdebug \
    && a2enmod rewrite
RUN a2enmod ssl
RUN pecl install -o -f redis \
&&  rm -rf /tmp/pear \
&&  docker-php-ext-enable redis

重新 build

Dockerfile 文件中添加 redis 扩展_第2张图片

重新访问 phpinfo

Dockerfile 文件中添加 redis 扩展_第3张图片

你可能感兴趣的:(Docker)