From f911f23c8d802e4b531a989d32a68b1216432b53 Mon Sep 17 00:00:00 2001 From: hoellen Date: Thu, 6 Dec 2018 17:38:28 +0100 Subject: [PATCH] add new php version 7.3.0 and update to 7.2.13 and 7.1.25. PHP 7.1 will be removed with the release of nextcloud 15. --- nginx-php/Dockerfile.7.1 | 2 +- nginx-php/Dockerfile.7.2 | 2 +- nginx-php/Dockerfile.7.3 | 180 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 182 insertions(+), 2 deletions(-) create mode 100644 nginx-php/Dockerfile.7.3 diff --git a/nginx-php/Dockerfile.7.1 b/nginx-php/Dockerfile.7.1 index 498918f..6d6de90 100644 --- a/nginx-php/Dockerfile.7.1 +++ b/nginx-php/Dockerfile.7.1 @@ -3,7 +3,7 @@ FROM alpine:3.8 ARG BUILD_CORES ARG NGINX_VER=1.15.6 -ARG PHP_VER=7.1.24 +ARG PHP_VER=7.1.25 ARG LIBICONV_VERSION=1.15 LABEL description="nginx + php image based on Alpine" \ diff --git a/nginx-php/Dockerfile.7.2 b/nginx-php/Dockerfile.7.2 index 3c7605f..4c3493f 100644 --- a/nginx-php/Dockerfile.7.2 +++ b/nginx-php/Dockerfile.7.2 @@ -3,7 +3,7 @@ FROM alpine:3.8 ARG BUILD_CORES ARG NGINX_VER=1.15.6 -ARG PHP_VER=7.2.12 +ARG PHP_VER=7.2.13 ARG LIBICONV_VERSION=1.15 LABEL description="nginx + php image based on Alpine" \ diff --git a/nginx-php/Dockerfile.7.3 b/nginx-php/Dockerfile.7.3 new file mode 100644 index 0000000..8fecc17 --- /dev/null +++ b/nginx-php/Dockerfile.7.3 @@ -0,0 +1,180 @@ +FROM alpine:3.8 + +ARG BUILD_CORES + +ARG NGINX_VER=1.15.6 +ARG PHP_VER=7.3.0 +ARG LIBICONV_VERSION=1.15 + +LABEL description="nginx + php image based on Alpine" \ + maintainer="hoellen info@hoellen.eu" \ + php_version="PHP v$PHP_VER built from source" \ + nginx_version="nginx v$NGINX_VER built from source" + +ARG PHP_MIRROR=http://ch1.php.net + +ARG NGINX_CONF=" \ + --prefix=/nginx \ + --sbin-path=/usr/local/sbin/nginx \ + --http-log-path=/nginx/logs/access.log \ + --error-log-path=/nginx/logs/error.log \ + --pid-path=/nginx/run/nginx.pid \ + --lock-path=/nginx/run/nginx.lock \ + --with-threads \ + --with-file-aio \ + --without-http_geo_module \ + --without-http_autoindex_module \ + --without-http_split_clients_module \ + --without-http_memcached_module \ + --without-http_empty_gif_module \ + --without-http_browser_module" + +ARG PHP_CONF=" \ + --prefix=/usr \ + --libdir=/usr/lib/php \ + --datadir=/usr/share/php \ + --sysconfdir=/php/etc \ + --localstatedir=/php/var \ + --with-pear=/usr/share/php \ + --with-config-file-scan-dir=/php/conf.d \ + --with-config-file-path=/php \ + --with-pic \ + --disable-short-tags \ + --without-readline \ + --enable-bcmath=shared \ + --enable-fpm \ + --disable-cgi \ + --enable-mysqlnd \ + --enable-mbstring \ + --with-curl \ + --with-libedit \ + --with-openssl \ + --with-iconv=/usr/local \ + --with-gd \ + --with-jpeg-dir \ + --with-png-dir \ + --with-webp-dir \ + --with-xpm-dir=no \ + --with-freetype-dir \ + --disable-gd-jis-conv \ + --with-zlib" + +ARG PHP_EXT_LIST=" \ + mysqli \ + ctype \ + dom \ + json \ + xml \ + mbstring \ + posix \ + xmlwriter \ + zip \ + zlib \ + sqlite3 \ + pdo_sqlite \ + pdo_pgsql \ + pdo_mysql \ + pcntl \ + curl \ + fileinfo \ + bz2 \ + intl \ + openssl \ + ldap \ + simplexml \ + pgsql \ + ftp \ + exif \ + gmp \ + imap" + +ARG CUSTOM_BUILD_PKGS=" \ + freetype-dev \ + openldap-dev \ + gmp-dev \ + icu-dev \ + postgresql-dev \ + libpng-dev \ + libwebp-dev \ + gd-dev \ + libjpeg-turbo-dev \ + libxpm-dev \ + libedit-dev \ + libxml2-dev \ + libressl-dev \ + libbz2 \ + sqlite-dev \ + imap-dev" + +ARG CUSTOM_PKGS=" \ + freetype \ + openldap \ + gmp \ + bzip2-dev \ + icu \ + libpq \ + c-client" + +COPY rootfs / + +RUN NB_CORES=${BUILD_CORES-$(getconf _NPROCESSORS_CONF)} \ + && BUILD_DEPS=" \ + linux-headers \ + libtool \ + build-base \ + pcre-dev \ + zlib-dev \ + wget \ + gnupg \ + autoconf \ + gcc \ + g++ \ + libc-dev \ + make \ + pkgconf \ + curl-dev \ + ca-certificates \ + ${CUSTOM_BUILD_PKGS}" \ + && apk -U add \ + ${BUILD_DEPS} \ + s6 \ + su-exec \ + curl \ + libedit \ + libxml2 \ + libressl \ + libwebp \ + gd \ + pcre \ + zlib \ + ${CUSTOM_PKGS} \ + && wget http://nginx.org/download/nginx-${NGINX_VER}.tar.gz -O /tmp/nginx-${NGINX_VER}.tar.gz \ + && wget http://nginx.org/download/nginx-${NGINX_VER}.tar.gz.asc -O /tmp/nginx-${NGINX_VER}.tar.gz.asc \ + && wget ${PHP_MIRROR}/get/php-${PHP_VER}.tar.gz/from/this/mirror -O /tmp/php-${PHP_VER}.tar.gz \ + && wget ${PHP_MIRROR}/get/php-${PHP_VER}.tar.gz.asc/from/this/mirror -O /tmp/php-${PHP_VER}.tar.gz.asc \ + && wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-${LIBICONV_VERSION}.tar.gz -O /tmp/libiconv-${LIBICONV_VERSION}.tar.gz \ + && mkdir -p /php/conf.d \ + && mkdir -p /usr/src \ + && tar xzf /tmp/nginx-${NGINX_VER}.tar.gz -C /usr/src \ + && tar xzvf /tmp/php-${PHP_VER}.tar.gz -C /usr/src \ + && tar xzf /tmp/libiconv-${LIBICONV_VERSION}.tar.gz -C /usr/src \ + && cd /usr/src/nginx-${NGINX_VER} \ + && ./configure --with-cc-opt="-O3 -fPIE -fstack-protector-strong" ${NGINX_CONF} \ + && make -j ${NB_CORES} \ + && make install \ + && cd /usr/src/libiconv-${LIBICONV_VERSION} \ + && ./configure --prefix=/usr/local \ + && make && make install && libtool --finish /usr/local/lib \ + && mv /usr/src/php-${PHP_VER} /usr/src/php \ + && cd /usr/src/php \ + && ./configure CFLAGS="-O3 -fstack-protector-strong" ${PHP_CONF} \ + && make -j ${NB_CORES} \ + && make install \ + && { find /usr/local/bin /usr/local/sbin -type f -perm +0111 -exec strip --strip-all '{}' + || true; } \ + && make clean \ + && chmod u+x /usr/local/bin/* /etc/s6.d/*/* \ + && sleep 1 \ + && docker-php-ext-install ${PHP_EXT_LIST} \ + && apk del ${BUILD_DEPS} \ + && rm -rf /tmp/* /var/cache/apk/* /usr/src/* \ + && mkdir -p /nginx/logs /nginx/run /php/php-fpm.d /php/logs /php/run /php/session