如何使用官方 PHP Docker 镜像方法安装 php-redis 扩展?

新手上路,请多包涵

我想使用基于 官方 PHP Docker 镜像php-redis 扩展构建我的 PHP-FPM 镜像,例如,使用这个 Dockerfile: php:5.6-fpm

文档说我可以通过这种方式安装扩展,手动安装扩展的依赖项:

 FROM php:5.6-fpm
# Install modules (iconv, mcrypt and gd extensions)
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
CMD ["php-fpm"]

没有 Docker,我使用 apt-get install php5-redis 安装它。但是如何使用上述方法安装它?

原文由 starikovs 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.9k
2 个回答

Redis 不是包含在“php-src”中的扩展,因此您不能使用 docker-php-ext-install 。使用 PECL

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

在 alpine php 7.3.5 上,我们可以使用:

 RUN apk add --no-cache pcre-dev $PHPIZE_DEPS \
        && pecl install redis \
        && docker-php-ext-enable redis.so

原文由 TimWolla 发布,翻译遵循 CC BY-SA 4.0 许可协议

对于图像 php:7.2-fpm-alpine。

 RUN apk add autoconf gcc g++ make && pecl install redis && docker-php-ext-enable redis

您可能需要先更新

apk --update upgrade

原文由 Gabriel Novaes 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题