laradock 中安装 PHP 扩展
解锁 laradock 中安装PHP扩展的正确姿势
一、安装扩展的两种方式
1、通过 pecl 方式安装
2、通过容器的特殊命令来安装
二、例子
1、通过 pecl 方式安装的例子
###########################################################################
# PHP Memcached:
###########################################################################
ARG INSTALL_MEMCACHED=false
RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
# Install the php memcached extension
if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \
pecl install memcached-2.2.0; \
else \
pecl install memcached-3.1.3; \
fi \
&& docker-php-ext-enable memcached \
;fi
解释:使用
pecl
来安装扩展,然后通过docker-php-ext-enable
来开启扩展
2、通过特殊命令安装的例子
###########################################################################
# IMAP:
###########################################################################
ARG INSTALL_IMAP=false
RUN if [ ${INSTALL_IMAP} = true ]; then \
apt-get install -y libc-client-dev libkrb5-dev && \
docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \
docker-php-ext-install imap \
;fi
解释:先安装依赖,然后使用
docker-php-ext-configure
来自定义配置,最后使用具有安装与开启扩展功能的docker-php-ext-install
命令
三、参数说明
1、docker-php-source:创建一个‘/usr/src/php’的目录。我们会把下载的扩展资源放入‘/usr/src/php/ext’目录中
2、docker-php-ext-configure:自定义特殊配置
3、docker-php-ext-install:安装‘/usr/src/php/ext’目中的特定扩展,并自动开启
4、docker-php-ext-enable:开启配置命令。由于PECL知识安装却不设置开启,所以这个命令一般都会结合PECL一起使用
四、提示
1、更多使用例子,请查看 laradock 目录下的 php-fpm/Dockerfile 文件
2、也可以查看这两篇实战文章 安装 Redis 扩展、 安装 Imagick 扩展
结语
遇到问题别气馁,请相信自己能行!
思考,尝试! 如果失败,那就查阅资料,再思考,再尝试!
本作品采用《CC 协议》,转载必须注明作者和本文链接