# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-mods.j2 instead. FROM devilbox/php-fpm:8.1-base as builder ### ### Install ### RUN set -eux \ && DEBIAN_FRONTEND=noninteractive apt-get update -q \ && DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends --no-install-suggests apt-utils \ && DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends --no-install-suggests \ alien \ firebird-dev \ libaio-dev \ libavif-dev \ libbz2-dev \ libc-client-dev \ libcurl4-openssl-dev \ libenchant-2-dev \ libevent-dev \ libfbclient2 \ libfreetype6-dev \ libgmp-dev \ libib-util \ libicu-dev \ libjpeg-dev \ libkrb5-dev \ libldap2-dev \ libmemcached-dev \ libpcre3-dev \ libpng-dev \ libpq-dev \ libpspell-dev \ librabbitmq-dev \ libsasl2-dev \ libsnmp-dev \ libsodium-dev \ libssl-dev \ libtidy-dev \ libvpx-dev \ libwebp-dev \ libxml2-dev \ libxpm-dev \ libxslt-dev \ libyaml-dev \ libzip-dev \ snmp \ zlib1g-dev \ ca-certificates \ git # Fix timezone (only required for testing to stop php -v and php-fpm -v from complaining to stderr) RUN set -eux \ && echo "date.timezone=UTC" > /usr/local/etc/php/php.ini ### ### Install and enable PHP modules ### # Enable ffi if it exists RUN set -eux \ && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-ffi.ini ]; then \ echo "ffi.enable = 1" >> /usr/local/etc/php/conf.d/docker-php-ext-ffi.ini; \ fi # -------------------- Installing PHP Extension: amqp -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Custom: Pecl command && echo "/usr" | pecl install amqp \ # Enabling && docker-php-ext-enable amqp \ && true # -------------------- Installing PHP Extension: apcu -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install apcu \ # Enabling && docker-php-ext-enable apcu \ && true # -------------------- Installing PHP Extension: bcmath -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bcmath \ && true # -------------------- Installing PHP Extension: bz2 -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) bz2 \ && true # -------------------- Installing PHP Extension: calendar -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) calendar \ && true # -------------------- Installing PHP Extension: dba -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) dba \ && true # -------------------- Installing PHP Extension: enchant -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) enchant \ && true # -------------------- Installing PHP Extension: exif -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) exif \ && true # -------------------- Installing PHP Extension: gd -------------------- RUN set -eux \ # Generic pre-command && ln -s /usr/lib/x86_64-linux-gnu/libXpm.* /usr/lib/ \ # Installation: Version specific # Type: Built-in extension # Custom: configure command && docker-php-ext-configure gd --enable-gd --with-webp --with-jpeg --with-xpm --with-freetype --with-avif \ # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gd \ && true # -------------------- Installing PHP Extension: gettext -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gettext \ && true # -------------------- Installing PHP Extension: gmp -------------------- RUN set -eux \ # Generic pre-command && ln /usr/include/x86_64-linux-gnu/gmp.h /usr/include/ \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) gmp \ && true # -------------------- Installing PHP Extension: igbinary -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install igbinary \ # Enabling && docker-php-ext-enable igbinary \ && true # -------------------- Installing PHP Extension: imap -------------------- RUN set -eux \ # Generic pre-command && ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) imap \ && true # -------------------- Installing PHP Extension: intl -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) intl \ && true # -------------------- Installing PHP Extension: ldap -------------------- RUN set -eux \ # Generic pre-command && ln -s /usr/lib/x86_64-linux-gnu/libldap* /usr/lib/ \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure ldap --with-ldap --with-ldap-sasl \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) ldap \ && true # -------------------- Installing PHP Extension: msgpack -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install msgpack \ # Enabling && docker-php-ext-enable msgpack \ && true # -------------------- Installing PHP Extension: memcache -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install memcache \ # Enabling && docker-php-ext-enable memcache \ && true # -------------------- Installing PHP Extension: memcached -------------------- RUN set -eux \ # Installation: Version specific # Type: GIT extension && git clone https://github.com/php-memcached-dev/php-memcached /tmp/memcached \ && cd /tmp/memcached \ # Custom: Branch && git checkout master \ # Custom: Install command && true \ # FIXME: This is a work-around to mitigate compile error with PHP 8.1 && sed -i'' 's/\sTSRMLS_CC//g' php_memcached_session.c \ && phpize \ && ./configure --enable-memcached \ && make -j$(getconf _NPROCESSORS_ONLN) \ && make install \ \ # Enabling && docker-php-ext-enable memcached \ && true # -------------------- Installing PHP Extension: mongodb -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install mongodb \ # Enabling && docker-php-ext-enable mongodb \ && true # -------------------- Installing PHP Extension: mysqli -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) mysqli \ && true # -------------------- Installing PHP Extension: oauth -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install oauth \ # Enabling && docker-php-ext-enable oauth \ && true # -------------------- Installing PHP Extension: oci8 -------------------- RUN set -eux \ # Generic pre-command && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_FULL="$( echo "${ORACLE_HREF}" | grep -Eo 'basiclite-[-.0-9]+' | sed -e 's/basiclite-//g' -e 's/\.$//g' )" \ \ && rpm --import http://yum.oracle.com/RPM-GPG-KEY-oracle-ol7 \ && curl -o /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && curl -o /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ && alien -i /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && alien -i /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ && rm -f /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && rm -f /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure oci8 --with-oci8=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) oci8 \ # Generic post-command && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_FULL="$( echo "${ORACLE_HREF}" | grep -Eo 'basiclite-[-.0-9]+' | sed -e 's/basiclite-//g' -e 's/\.$//g' )" \ && (ln -sf /usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/*.so* /usr/lib/ || true) \ \ && true # -------------------- Installing PHP Extension: opcache -------------------- RUN set -eux \ # Version specific pre-command && curl -sS https://raw.githubusercontent.com/php/php-src/php-8.0.6/ext/opcache/Optimizer/zend_dfg.h > /usr/local/include/php/Zend/Optimizer/zend_dfg.h \ # Installation: Version specific # Type: Built-in extension # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) opcache \ && true # -------------------- Installing PHP Extension: pcntl -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pcntl \ && true # -------------------- Installing PHP Extension: pdo_firebird -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_firebird \ && true # -------------------- Installing PHP Extension: pdo_mysql -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure pdo_mysql --with-zlib-dir=/usr \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_mysql \ && true # -------------------- Installing PHP Extension: pdo_oci -------------------- RUN set -eux \ # Generic pre-command && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_FULL="$( echo "${ORACLE_HREF}" | grep -Eo 'basiclite-[-.0-9]+' | sed -e 's/basiclite-//g' -e 's/\.$//g' )" \ \ && rpm --import http://yum.oracle.com/RPM-GPG-KEY-oracle-ol7 \ && curl -o /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && curl -o /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/getPackage/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ && alien -i /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && alien -i /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ && rm -f /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-basiclite-${ORACLE_VERSION_FULL}.x86_64.rpm \ && rm -f /tmp/oracle-instantclient${ORACLE_VERSION_MAJOR}-devel-${ORACLE_VERSION_FULL}.x86_64.rpm \ && (ln -s /usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/*.so* /usr/lib/ || true) \ \ # Installation: Version specific # Type: Built-in extension # Custom: configure command && docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/,${ORACLE_VERSION_MAJOR} \ # Installation && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_oci \ && true # -------------------- Installing PHP Extension: pdo_pgsql -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pdo_pgsql \ && true # -------------------- Installing PHP Extension: pgsql -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pgsql \ && true # -------------------- Installing PHP Extension: psr -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install psr \ # Enabling && docker-php-ext-enable psr \ && true # -------------------- Installing PHP Extension: pspell -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \ && true # -------------------- Installing PHP Extension: redis -------------------- RUN set -eux \ # Installation: Version specific # Type: GIT extension && git clone https://github.com/phpredis/phpredis /tmp/redis \ && cd /tmp/redis \ # Custom: Branch && git checkout $(git for-each-ref --format='%(refname)' refs/tags | grep -E 'tags/[.0-9]+$' | sed 's|.*tags/||g' | sort -V | tail -1) \ # Custom: Install command && REDIS_ARGS=""; \ if [ -d "/usr/local/include/php/ext/igbinary" ]; then \ REDIS_ARGS="${REDIS_ARGS} --enable-redis-igbinary"; \ fi; \ if [ -d "/usr/local/include/php/ext/msgpack" ]; then \ REDIS_ARGS="${REDIS_ARGS} --enable-redis-msgpack"; \ fi; \ phpize \ && ./configure --enable-redis ${REDIS_ARGS} \ && sed -i'' 's/ops->hash_init(ctx);/ops->hash_init(ctx, NULL);/g' library.c \ && sed -i'' 's/ops->hash_init(ctx);/ops->hash_init(ctx, NULL);/g' redis_array_impl.c \ && make -j$(getconf _NPROCESSORS_ONLN) \ && make install \ \ # Enabling && docker-php-ext-enable redis \ && true # -------------------- Installing PHP Extension: shmop -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) shmop \ && true # -------------------- Installing PHP Extension: snmp -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure snmp --with-openssl-dir \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \ && true # -------------------- Installing PHP Extension: soap -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure soap --with-libxml-dir=/usr \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) soap \ && true # -------------------- Installing PHP Extension: sockets -------------------- RUN set -eux \ # Version specific pre-command && docker-php-ext-configure sockets \ && sed -i'' 's/.*ucred.*//g' /usr/src/php/ext/sockets/sendrecvmsg.c \ \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sockets \ && true # -------------------- Installing PHP Extension: sodium -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sodium \ && true # -------------------- Installing PHP Extension: solr -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install solr \ # Enabling && docker-php-ext-enable solr \ && true # -------------------- Installing PHP Extension: sysvmsg -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \ && true # -------------------- Installing PHP Extension: sysvsem -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvsem \ && true # -------------------- Installing PHP Extension: sysvshm -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvshm \ && true # -------------------- Installing PHP Extension: tidy -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) tidy \ && true # -------------------- Installing PHP Extension: uploadprogress -------------------- RUN set -eux \ # Installation: Version specific # Type: PECL extension # Default: Pecl command && pecl install uploadprogress \ # Enabling && docker-php-ext-enable uploadprogress \ && true # -------------------- Installing PHP Extension: xdebug -------------------- RUN set -eux \ # Installation: Version specific # Type: GIT extension && git clone https://github.com/xdebug/xdebug /tmp/xdebug \ && cd /tmp/xdebug \ # Custom: Branch && git checkout $(git for-each-ref --format='%(refname)' refs/tags | grep -E 'tags/[.0-9]+$' | sed 's|.*tags/||g' | sort -V | tail -1) \ # Default: Install command && phpize \ && ./configure --enable-xdebug \ && make -j$(getconf _NPROCESSORS_ONLN) \ && make install \ # Enabling && docker-php-ext-enable xdebug \ && true # -------------------- Installing PHP Extension: xsl -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xsl \ && true # -------------------- Installing PHP Extension: xlswriter -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install xlswriter \ # Enabling && docker-php-ext-enable xlswriter \ && true # -------------------- Installing PHP Extension: yaml -------------------- RUN set -eux \ # Installation: Generic # Type: PECL extension # Default: Pecl command && pecl install yaml \ # Enabling && docker-php-ext-enable yaml \ && true # -------------------- Installing PHP Extension: zip -------------------- RUN set -eux \ # Installation: Generic # Type: Built-in extension # Custom: configure command && docker-php-ext-configure zip --with-zlib-dir=/usr --with-pcre-dir=/usr --with-libzip \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) zip \ && true # Fix php.ini settings for enabled extensions RUN set -eux \ && chmod +x "$(php -r 'echo ini_get("extension_dir");')"/* # Fix oracle dir for images that don't have oci installed RUN set -eux \ && mkdir -p /usr/lib/oracle/ # Shrink everything down RUN set -eux \ && (find /usr/local/bin -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true) \ && (find /usr/local/lib -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true) \ && (find /usr/local/sbin -type f -print0 | xargs -n1 -0 strip --strip-all -p 2>/dev/null || true) # Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-mods.j2 instead. FROM devilbox/php-fpm:8.1-base as final MAINTAINER "cytopia" ### ### Labels ### # https://github.com/opencontainers/image-spec/blob/master/annotations.md #LABEL "org.opencontainers.image.created"="" #LABEL "org.opencontainers.image.version"="" #LABEL "org.opencontainers.image.revision"="" LABEL "maintainer"="cytopia " LABEL "org.opencontainers.image.authors"="cytopia " LABEL "org.opencontainers.image.url"="https://github.com/devilbox/docker-php-fpm" LABEL "org.opencontainers.image.documentation"="https://github.com/devilbox/docker-php-fpm" LABEL "org.opencontainers.image.source"="https://github.com/devilbox/docker-php-fpm" LABEL "org.opencontainers.image.vendor"="devilbox" LABEL "org.opencontainers.image.licenses"="MIT" LABEL "org.opencontainers.image.ref.name"="8.1-mods" LABEL "org.opencontainers.image.title"="PHP-FPM 8.1-mods" LABEL "org.opencontainers.image.description"="PHP-FPM 8.1-mods" ### ### Copy artifacts from builder ### ARG EXT_DIR COPY --from=builder ${EXT_DIR}/ ${EXT_DIR}/ COPY --from=builder /usr/local/etc/php/conf.d/ /usr/local/etc/php/conf.d/ COPY --from=builder /usr/local/bin/ /usr/local/bin/ COPY --from=builder /usr/local/lib/ /usr/local/lib/ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/ ### ### Install ### RUN set -eux \ && DEBIAN_FRONTEND=noninteractive apt-get update -q \ && DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends --no-install-suggests \ libaio1 \ libaspell15 \ libavif9 \ libc-client2007e \ libenchant-2-2 \ libfbclient2 \ libffi7 \ libfreetype6 \ libicu67 \ libjpeg62-turbo \ libmemcachedutil2 \ libpng16-16 \ libpq5 \ librabbitmq4 \ libtidy5deb1 \ libvpx6 \ libwebp6 \ libxpm4 \ libxslt1.1 \ libyaml-0-2 \ libzip4 \ snmp \ ca-certificates \ && rm -rf /var/lib/apt/lists/* \ \ && update-ca-certificates ### ### Post Install ### RUN set -eux \ # ---------- oci8 ---------- && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_FULL="$( echo "${ORACLE_HREF}" | grep -Eo 'basiclite-[-.0-9]+' | sed -e 's/basiclite-//g' -e 's/\.$//g' )" \ && (ln -sf /usr/lib/oracle/${ORACLE_VERSION_MAJOR}/client64/lib/*.so* /usr/lib/ || true) \ \ && true ### ### Verify ### RUN set -eux \ && echo "date.timezone=UTC" > /usr/local/etc/php/php.ini \ && php -v | grep -oE 'PHP\s[.0-9]+' | grep -oE '[.0-9]+' | grep '^8.1' \ && /usr/local/sbin/php-fpm --test \ \ && PHP_ERROR="$( php -v 2>&1 1>/dev/null )" \ && if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi \ && PHP_ERROR="$( php -i 2>&1 1>/dev/null )" \ && if [ -n "${PHP_ERROR}" ]; then echo "${PHP_ERROR}"; false; fi \ \ && PHP_FPM_ERROR="$( php-fpm -v 2>&1 1>/dev/null )" \ && if [ -n "${PHP_FPM_ERROR}" ]; then echo "${PHP_FPM_ERROR}"; false; fi \ && PHP_FPM_ERROR="$( php-fpm -i 2>&1 1>/dev/null )" \ && if [ -n "${PHP_FPM_ERROR}" ]; then echo "${PHP_FPM_ERROR}"; false; fi \ && rm -f /usr/local/etc/php/php.ini \ \ && php -m | grep -oiE '^amqp$' \ && php-fpm -m | grep -oiE '^amqp$' \ && php -m | grep -oiE '^apcu$' \ && php-fpm -m | grep -oiE '^apcu$' \ && php -m | grep -oiE '^bcmath$' \ && php-fpm -m | grep -oiE '^bcmath$' \ && php -m | grep -oiE '^bz2$' \ && php-fpm -m | grep -oiE '^bz2$' \ && php -m | grep -oiE '^calendar$' \ && php-fpm -m | grep -oiE '^calendar$' \ && php -m | grep -oiE '^ctype$' \ && php-fpm -m | grep -oiE '^ctype$' \ && php -m | grep -oiE '^curl$' \ && php-fpm -m | grep -oiE '^curl$' \ && php -m | grep -oiE '^dba$' \ && php-fpm -m | grep -oiE '^dba$' \ && php -m | grep -oiE '^dom$' \ && php-fpm -m | grep -oiE '^dom$' \ && php -m | grep -oiE '^enchant$' \ && php-fpm -m | grep -oiE '^enchant$' \ && php -m | grep -oiE '^exif$' \ && php-fpm -m | grep -oiE '^exif$' \ && php -m | grep -oiE '^ffi$' \ && php-fpm -m | grep -oiE '^ffi$' \ && php -m | grep -oiE '^fileinfo$' \ && php-fpm -m | grep -oiE '^fileinfo$' \ && php -m | grep -oiE '^filter$' \ && php-fpm -m | grep -oiE '^filter$' \ && php -m | grep -oiE '^ftp$' \ && php-fpm -m | grep -oiE '^ftp$' \ && php -m | grep -oiE '^gd$' \ && php-fpm -m | grep -oiE '^gd$' \ && php -m | grep -oiE '^gettext$' \ && php-fpm -m | grep -oiE '^gettext$' \ && php -m | grep -oiE '^gmp$' \ && php-fpm -m | grep -oiE '^gmp$' \ && php -m | grep -oiE '^hash$' \ && php-fpm -m | grep -oiE '^hash$' \ && php -m | grep -oiE '^iconv$' \ && php-fpm -m | grep -oiE '^iconv$' \ && php -m | grep -oiE '^igbinary$' \ && php-fpm -m | grep -oiE '^igbinary$' \ && php -m | grep -oiE '^imap$' \ && php-fpm -m | grep -oiE '^imap$' \ && php -m | grep -oiE '^intl$' \ && php-fpm -m | grep -oiE '^intl$' \ && php -m | grep -oiE '^json$' \ && php-fpm -m | grep -oiE '^json$' \ && php -m | grep -oiE '^ldap$' \ && php-fpm -m | grep -oiE '^ldap$' \ && php -m | grep -oiE '^libxml$' \ && php-fpm -m | grep -oiE '^libxml$' \ && php -m | grep -oiE '^mbstring$' \ && php-fpm -m | grep -oiE '^mbstring$' \ && php -m | grep -oiE '^msgpack$' \ && php-fpm -m | grep -oiE '^msgpack$' \ && php -m | grep -oiE '^memcache$' \ && php-fpm -m | grep -oiE '^memcache$' \ && php -m | grep -oiE '^memcached$' \ && php-fpm -m | grep -oiE '^memcached$' \ && php -m | grep -oiE '^mongodb$' \ && php-fpm -m | grep -oiE '^mongodb$' \ && php -m | grep -oiE '^mysqli$' \ && php-fpm -m | grep -oiE '^mysqli$' \ && php -m | grep -oiE '^mysqlnd$' \ && php-fpm -m | grep -oiE '^mysqlnd$' \ && php -m | grep -oiE '^oauth$' \ && php-fpm -m | grep -oiE '^oauth$' \ && php -m | grep -oiE '^oci8$' \ && php-fpm -m | grep -oiE '^oci8$' \ && php -m | grep -oiE '^Zend Opcache$' \ && php-fpm -m | grep -oiE '^Zend Opcache$' \ && php -m | grep -oiE '^openssl$' \ && php-fpm -m | grep -oiE '^openssl$' \ && php -m | grep -oiE '^pcntl$' \ && php-fpm -m | grep -oiE '^pcntl$' \ && php -m | grep -oiE '^pcre$' \ && php-fpm -m | grep -oiE '^pcre$' \ && php -m | grep -oiE '^pdo$' \ && php-fpm -m | grep -oiE '^pdo$' \ && php -m | grep -oiE '^pdo_firebird$' \ && php-fpm -m | grep -oiE '^pdo_firebird$' \ && php -m | grep -oiE '^pdo_mysql$' \ && php-fpm -m | grep -oiE '^pdo_mysql$' \ && php -m | grep -oiE '^pdo_oci$' \ && php-fpm -m | grep -oiE '^pdo_oci$' \ && php -m | grep -oiE '^pdo_pgsql$' \ && php-fpm -m | grep -oiE '^pdo_pgsql$' \ && php -m | grep -oiE '^pdo_sqlite$' \ && php-fpm -m | grep -oiE '^pdo_sqlite$' \ && php -m | grep -oiE '^pgsql$' \ && php-fpm -m | grep -oiE '^pgsql$' \ && php -m | grep -oiE '^psr$' \ && php-fpm -m | grep -oiE '^psr$' \ && php -m | grep -oiE '^phar$' \ && php-fpm -m | grep -oiE '^phar$' \ && php -m | grep -oiE '^posix$' \ && php-fpm -m | grep -oiE '^posix$' \ && php -m | grep -oiE '^pspell$' \ && php-fpm -m | grep -oiE '^pspell$' \ && php -m | grep -oiE '^readline$' \ && php -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^reflection$' \ && php-fpm -m | grep -oiE '^reflection$' \ && php -m | grep -oiE '^session$' \ && php-fpm -m | grep -oiE '^session$' \ && php -m | grep -oiE '^shmop$' \ && php-fpm -m | grep -oiE '^shmop$' \ && php -m | grep -oiE '^simplexml$' \ && php-fpm -m | grep -oiE '^simplexml$' \ && php -m | grep -oiE '^snmp$' \ && php-fpm -m | grep -oiE '^snmp$' \ && php -m | grep -oiE '^soap$' \ && php-fpm -m | grep -oiE '^soap$' \ && php -m | grep -oiE '^sockets$' \ && php-fpm -m | grep -oiE '^sockets$' \ && php -m | grep -oiE '^sodium$' \ && php-fpm -m | grep -oiE '^sodium$' \ && php -m | grep -oiE '^solr$' \ && php-fpm -m | grep -oiE '^solr$' \ && php -m | grep -oiE '^spl$' \ && php-fpm -m | grep -oiE '^spl$' \ && php -m | grep -oiE '^sysvmsg$' \ && php-fpm -m | grep -oiE '^sysvmsg$' \ && php -m | grep -oiE '^sysvsem$' \ && php-fpm -m | grep -oiE '^sysvsem$' \ && php -m | grep -oiE '^sysvshm$' \ && php-fpm -m | grep -oiE '^sysvshm$' \ && php -m | grep -oiE '^tidy$' \ && php-fpm -m | grep -oiE '^tidy$' \ && php -m | grep -oiE '^tokenizer$' \ && php-fpm -m | grep -oiE '^tokenizer$' \ && php -m | grep -oiE '^uploadprogress$' \ && php-fpm -m | grep -oiE '^uploadprogress$' \ && php -m | grep -oiE '^xdebug$' \ && php-fpm -m | grep -oiE '^xdebug$' \ && php -m | grep -oiE '^xml$' \ && php-fpm -m | grep -oiE '^xml$' \ && php -m | grep -oiE '^xmlreader$' \ && php-fpm -m | grep -oiE '^xmlreader$' \ && php -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \ && php -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xlswriter$' \ && php-fpm -m | grep -oiE '^xlswriter$' \ && php -m | grep -oiE '^yaml$' \ && php-fpm -m | grep -oiE '^yaml$' \ && php -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \ && true # Deactive PSR and Phalcon: # https://github.com/devilbox/docker-php-fpm/issues/201 RUN set -eux \ && rm -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini || true \ && rm -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini || true \ ### ### Ports ### EXPOSE 9000 ### ### Entrypoint ### CMD ["/usr/local/sbin/php-fpm"] ENTRYPOINT ["/docker-entrypoint.sh"]