docker php扩展,PHP 在 Docker 中扩展汇总

# PHP 容器配置

# 从官方基础版本构建

FROM php:7.2-fpm

# 官方版本默认安装扩展:

# Core, ctype, curl

# date, dom

# fileinfo, filter, ftp

# hash

# iconv

# json

# libxml

# mbstring, mysqlnd

# openssl

# pcre, PDO, pdo_sqlite, Phar, posix

# readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard

# tokenizer

# xml, xmlreader, xmlwriter

# zlib

# 1.0.2 增加 bcmath, calendar, exif, gettext, sockets, dba,

# mysqli, pcntl, pdo_mysql, shmop, sysvmsg, sysvsem, sysvshm 扩展

RUN docker-php-ext-install -j$(nproc) bcmath calendar exif gettext \

sockets dba mysqli pcntl pdo_mysql shmop sysvmsg sysvsem sysvshm

# 1.0.3 增加 bz2 扩展, 读写 bzip2(.bz2)压缩文件

RUN apt-get update && \

apt-get install -y --no-install-recommends libbz2-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) bz2

# 1.0.4 增加 enchant 扩展, 拼写检查库

RUN apt-get update && \

apt-get install -y --no-install-recommends libenchant-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) enchant

# 1.0.5 增加 GD 扩展. 图像处理

RUN apt-get update && \

apt-get install -y --no-install-recommends libfreetype6-dev libjpeg62-turbo-dev libpng-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ && \

docker-php-ext-install -j$(nproc) gd

# 1.0.6 增加 gmp 扩展, GMP

RUN apt-get update && \

apt-get install -y --no-install-recommends libgmp-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) gmp

# 1.0.7 增加 soap wddx xmlrpc tidy xsl 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libxml2-dev libtidy-dev libxslt1-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) soap wddx xmlrpc tidy xsl

# 1.0.8 增加 zip 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libzip-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) zip

# 1.0.9 增加 snmp 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libsnmp-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) snmp

# 1.0.10 增加 pgsql, pdo_pgsql 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libpq-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) pgsql pdo_pgsql

# 1.0.11 增加 pspell 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libpspell-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) pspell

# 1.0.12 增加 recode 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends librecode-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) recode

# 1.0.13 增加 PDO_Firebird 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends firebird-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) pdo_firebird

# 1.0.14 增加 pdo_dblib 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends freetds-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-configure pdo_dblib --with-libdir=lib/x86_64-linux-gnu && \

docker-php-ext-install -j$(nproc) pdo_dblib

# 1.0.15 增加 ldap 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libldap2-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu && \

docker-php-ext-install -j$(nproc) ldap

# 1.0.16 增加 imap 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libc-client-dev libkrb5-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \

docker-php-ext-install -j$(nproc) imap

# 1.0.17 增加 interbase 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends firebird-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) interbase

# 1.0.18 增加 intl 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libicu-dev && \

rm -r /var/lib/apt/lists/* && \

docker-php-ext-install -j$(nproc) intl

# 1.0.19 增加 mcrypt 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends libmcrypt-dev && \

rm -r /var/lib/apt/lists/* && \

pecl install mcrypt-1.0.1 && \

docker-php-ext-enable mcrypt

# 1.0.20 imagick 扩展

RUN export CFLAGS="$PHP_CFLAGS" CPPFLAGS="$PHP_CPPFLAGS" LDFLAGS="$PHP_LDFLAGS" && \

apt-get update && \

apt-get install -y --no-install-recommends libmagickwand-dev && \

rm -rf /var/lib/apt/lists/* && \

pecl install imagick-3.4.3 && \

docker-php-ext-enable imagick

# 1.0.21 增加 Memcached 扩展

RUN apt-get update && \

apt-get install -y --no-install-recommends zlib1g-dev libmemcached-dev && \

rm -r /var/lib/apt/lists/* && \

pecl install memcached && \

docker-php-ext-enable memcached

# 1.0.22 redis 扩展

RUN pecl install redis-4.0.1 && docker-php-ext-enable redis

# 1.0.23 增加 opcache 扩展

RUN docker-php-ext-configure opcache --enable-opcache && docker-php-ext-install opcache

# 1.0.24 增加 odbc, pdo_odbc 扩展

RUN set -ex; \

docker-php-source extract; \

{ \

echo '# https://github.com/docker-library/php/issues/103#issuecomment-271413933'; \

echo 'AC_DEFUN([PHP_ALWAYS_SHARED],[])dnl'; \

echo; \

cat /usr/src/php/ext/odbc/config.m4; \

} > temp.m4; \

mv temp.m4 /usr/src/php/ext/odbc/config.m4; \

apt-get update; \

apt-get install -y --no-install-recommends unixodbc-dev; \

rm -rf /var/lib/apt/lists/*; \

docker-php-ext-configure odbc --with-unixODBC=shared,/usr; \

docker-php-ext-configure pdo_odbc --with-pdo-odbc=unixODBC,/usr; \

docker-php-ext-install odbc pdo_odbc; \

docker-php-source delete

# 镜像信息

LABEL Author="Leo"

LABEL Version="1.0.25-fpm"

LABEL Description="PHP FPM 7.2 镜像. All extensions."

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值