docker内给php安装扩展

docker内给php安装扩展

一:docker已经打包好的扩展(例如gd,bcmath等)
主要包括gd,bcmath等,如果想要看docker已经打包了哪些扩展,可以使用:

docker-php-source extract    //拉取所有的docker已打包的扩展到/usr/src
cd /usr/src/php/ext
ls 

在这里插入图片描述
既可以看到。 这些扩展是可以使用docker自带的命令安装的,在dockerfile直接写或者在容器:

apt update
	安装依赖(安装gd扩展等必须要先安装系统依赖)
apt install libfreetype6-dev libmcrypt-dev libpng-dev libjpeg-dev libpng-dev sendmail zlib1g-dev

docker-php-ext-install gd
docker-php-ext-enable gd
docker-php-ext-install zip
docker-php-ext-enable zip
docker-php-ext-install mbstring
docker-php-ext-enable mbstring
docker-php-ext-install pdo_mysql
docker-php-ext-enable pdo_mysql

安装成功,使用 php -m 可以看到已经安装了gd扩展和bcmath扩展;

二:php的pecl库里存在的扩展(例如redis,memcached,swoole等)
这些扩展需要先使用pecl安装,然后再使用docker命令开启扩展即可

apt update && apt add --no-cache
autoconf g++ make libmemcached-dev \
	&& pecl install redis-5.2.2 \
	&& docker-php-ext-enable redis \
	&& pecl install memcached \
	&& docker-php-ext-enable memcached \
	&& pecl install swoole \
	&& docker-php-ext-enable swoole

安装成功,使用 php -m 可以看到已经安装了redis、memcached、swoole扩展;

三、需要自己编译生成的php扩展(例如zmq)

*#安装zmq扩展*
 RUN  cd /usr/src \ 
		&& apk add --no-cache --virtual .git_deps git \
		&& git clone git://github.com/mkoppanen/php-zmq.git \ 
		&& apk del .git_deps \
		&& apk add --no-cache  zeromq-dev \
		&& cd php-zmq \
		&& phpize \
		&& ./configure \
		&& make \
		&& make install \
   	    && docker-php-ext-enable zmq

安装成功,使用 php -m 可以看到已经安装了zmq扩展;
重启容器即生效

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值