给docker中的PHP安装 gd扩展

6 篇文章 0 订阅

在容器内使用docker-php-ext-install gd安装gd,使用过程中一些程序报错Call to undefined function imagettftext()。在phpinfo中发现它只支持png,所以需要重新编译。

本文使用的docker镜像为php:7.1-fpm

《给docker中的PHP安装gd扩展》

操作步骤

首先主机中执行docker exec -it <容器名 or id> /bin/bash进入容器的命令行。

#主机中
#如果之前启用了gd,需要先在php.ini文件中注释掉extension=gd.so并重启容器
docker exec -it <容器ID或容器名称> /bin/bash    #进入php容器
#容器中
#echo "deb http://mirrors.163.com/debian/ stretch main contrib non-free\ndeb http://mirrors.163.com/debian/ stretch-updates main contrib non-free\ndeb http://mirrors.163.com/debian/ stretch-backports main contrib non-free" > /etc/apt/sources.list  #软件源修改为网易镜像站源
apt update  #更新软件源
apt install -y libwebp-dev libjpeg-dev libpng-dev libfreetype6-dev #安装各种库
docker-php-source extract #解压源码
cd /usr/src/php/ext/gd  #gd源码文件夹
docker-php-ext-configure gd --with-webp-dir=/usr/include/webp --with-jpeg-dir=/usr/include --with-png-dir=/usr/include --with-freetype-dir=/usr/include/freetype2   #准备编译
docker-php-ext-install gd   #编译安装
php -m | grep gd
#重启容器

如果没有出现错误,那么gd应该已经支持jpeg等。

《给docker中的PHP安装gd扩展》

安装zip 扩展

获取扩展文件
wget http://pecl.php.net/get/zip-1.13.5.tgz

复制到容器当中

docker cp ./zip-1.13.5.tgz php7:/usr/src/php/ext/

加压文件

tar -zvxf zip-1.13.5.tgz

重命名

mv zip-1.13.5 zip

进入zip 文件

cd /usr/src/php/ext/zip

运行安装文件

docker-php-ext-install zip

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值