From 47c89787e60b475037e3cf2bde4ec4bace215cef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20Lado=20Cruz?= Date: Wed, 10 Mar 2021 11:55:09 +0000 Subject: [PATCH 01/10] Fix Redis Problem issue #2851 --- workspace/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspace/Dockerfile b/workspace/Dockerfile index c6c51054..1edc0834 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -560,7 +560,7 @@ ARG INSTALL_PHPREDIS=false RUN if [ ${INSTALL_PHPREDIS} = true ]; then \ apt-get update -yqq && \ - apt-get install -yqq php-redis \ + apt-get install -yqq php${LARADOCK_PHP_VERSION}-redis \ ;fi ########################################################################### From 2b778af03ff50c0080af9e5b67ba4778313e4ab3 Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sat, 20 Mar 2021 02:44:04 +0200 Subject: [PATCH 02/10] fix(ioncube extension): remove installation for PHP 8 PHP 8.0 currently is not supported, so it should be remove from the building for this version. --- php-fpm/Dockerfile | 14 ++++++++------ workspace/Dockerfile | 15 +++++++++------ 2 files changed, 17 insertions(+), 12 deletions(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index f32e8a7e..7eb23dd0 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -595,12 +595,14 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \ ARG INSTALL_IONCUBE=false RUN if [ ${INSTALL_IONCUBE} = true ]; then \ - # Install the php ioncube loader - curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ - && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ - && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ - && printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \ - && rm -rf /tmp/ioncube* \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \ + # Install the php ioncube loader + curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ + && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ + && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ + && printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \ + && rm -rf /tmp/ioncube* \ + ;fi \ ;fi ########################################################################### diff --git a/workspace/Dockerfile b/workspace/Dockerfile index af8da12b..449ff90d 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -691,12 +691,15 @@ RUN if [ ${INSTALL_GRAPHVIZ} = true ]; then \ ARG INSTALL_IONCUBE=false RUN if [ ${INSTALL_IONCUBE} = true ]; then \ - # Install the php ioncube loader - curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ - && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ - && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ - && echo "zend_extension=ioncube_loader.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/0ioncube.ini \ - && rm -rf /tmp/ioncube* \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \ + # Install the php ioncube loader + curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ + && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ + && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ + && echo "zend_extension=ioncube_loader.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/ioncube.ini \ + && ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/ioncube.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/0ioncube.ini \ + && rm -rf /tmp/ioncube* \ + ;fi \ ;fi ########################################################################### From 89b73eeeee19f18133f1f81fe7c9968acd66dbbc Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 13:37:16 +0200 Subject: [PATCH 03/10] feat(ioncube extension): add reference to .env file Provide a restriction to env file. --- env-example | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/env-example b/env-example index 7347e051..0bf08ac3 100644 --- a/env-example +++ b/env-example @@ -166,7 +166,7 @@ WORKSPACE_INSTALL_SWOOLE=false WORKSPACE_INSTALL_TAINT=false WORKSPACE_INSTALL_LIBPNG=false WORKSPACE_INSTALL_GRAPHVIZ=false -WORKSPACE_INSTALL_IONCUBE=false +WORKSPACE_INSTALL_IONCUBE=false # PHP 8.0 is not supported yet. Reference: https://forum.ioncube.com/viewtopic.php?t=4592 WORKSPACE_INSTALL_MYSQL_CLIENT=false WORKSPACE_INSTALL_PING=false WORKSPACE_INSTALL_SSHPASS=false @@ -240,7 +240,7 @@ PHP_FPM_INSTALL_POSTGIS=false PHP_FPM_INSTALL_PCNTL=false PHP_FPM_INSTALL_CALENDAR=false PHP_FPM_INSTALL_FAKETIME=false -PHP_FPM_INSTALL_IONCUBE=false +PHP_FPM_INSTALL_IONCUBE=false # PHP 8.0 is not supported yet. Reference: https://forum.ioncube.com/viewtopic.php?t=4592 PHP_FPM_INSTALL_RDKAFKA=false PHP_FPM_INSTALL_GETTEXT=false PHP_FPM_INSTALL_XMLRPC=false From 30c93210ebaa1ce0eeb24523d121f040bf478aab Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 15:05:36 +0200 Subject: [PATCH 04/10] fix(PGSql Client): get installed PGSql Client with the same versions We need to have an ability to install PGSql Client on `workspace` and `php-fpm` images with the same version (12). --- php-fpm/Dockerfile | 107 ++++++++++++++++++++++++--------------------- 1 file changed, 57 insertions(+), 50 deletions(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 06fbcdf6..75d9054c 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -39,6 +39,7 @@ RUN set -xe; \ pecl channel-update pecl.php.net && \ apt-get install -yqq \ apt-utils \ + git \ # #-------------------------------------------------------------------------- # Mandatory Software's Installation @@ -77,7 +78,7 @@ RUN set -xe; \ ARG INSTALL_BZ2=false RUN if [ ${INSTALL_BZ2} = true ]; then \ - apt-get -y install libbz2-dev; \ + apt-get -yqq install libbz2-dev; \ docker-php-ext-install bz2 \ ;fi @@ -89,7 +90,7 @@ ARG INSTALL_GMP=false RUN if [ ${INSTALL_GMP} = true ]; then \ # Install the GMP extension - apt-get install -y libgmp-dev && \ + apt-get install -yqq libgmp-dev && \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ ln -s /usr/include/x86_64-linux-gnu/gmp.h /usr/include/gmp.h \ ;fi && \ @@ -122,7 +123,7 @@ USER root ARG INSTALL_FAKETIME=false RUN if [ ${INSTALL_FAKETIME} = true ]; then \ - apt-get install -y libfaketime \ + apt-get install -yqq libfaketime \ ;fi ########################################################################### @@ -169,14 +170,16 @@ ARG INSTALL_PG_CLIENT=false ARG INSTALL_POSTGIS=false RUN if [ ${INSTALL_PG_CLIENT} = true ]; then \ - # Create folders if not exists (https://github.com/tianon/docker-brew-debian/issues/65) - mkdir -p /usr/share/man/man1 && \ - mkdir -p /usr/share/man/man7 && \ - # Install the pgsql client - apt-get install -y postgresql-client && \ + apt-get install -yqq gnupg \ + && . /etc/os-release \ + && echo "deb http://apt.postgresql.org/pub/repos/apt $VERSION_CODENAME-pgdg main" > /etc/apt/sources.list.d/pgdg.list \ + && curl -sL https://www.postgresql.org/media/keys/ACCC4CF8.asc | apt-key add - \ + && apt-get update -yqq \ + && apt-get install -yqq postgresql-client-12 postgis; \ if [ ${INSTALL_POSTGIS} = true ]; then \ - apt-get install -y postgis; \ + apt-get install -yqq postgis; \ fi \ + && apt-get purge -yqq gnupg \ ;fi ########################################################################### @@ -246,7 +249,7 @@ ARG INSTALL_PHPDBG=false RUN if [ ${INSTALL_PHPDBG} = true ]; then \ # Load the xdebug extension only with phpunit commands - apt-get install -y --force-yes php${LARADOCK_PHP_VERSION}-phpdbg \ + apt-get install -yqq --force-yes php${LARADOCK_PHP_VERSION}-phpdbg \ ;fi ########################################################################### @@ -381,7 +384,7 @@ ARG INSTALL_AMQP=false RUN if [ ${INSTALL_AMQP} = true ]; then \ # download and install manually, to make sure it's compatible with ampq installed by pecl later # install cmake first - apt-get -y install cmake && \ + apt-get -yqq install cmake && \ curl -L -o /tmp/rabbitmq-c.tar.gz https://github.com/alanxz/rabbitmq-c/archive/master.tar.gz && \ mkdir -p rabbitmq-c && \ tar -C rabbitmq-c -zxvf /tmp/rabbitmq-c.tar.gz --strip 1 && \ @@ -390,7 +393,11 @@ RUN if [ ${INSTALL_AMQP} = true ]; then \ cmake .. && \ cmake --build . --target install && \ # Install the amqp extension - pecl install amqp && \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ + printf "\n" | pecl install amqp-1.11.0beta; \ + else \ + printf "\n" | pecl install amqp; \ + fi && \ docker-php-ext-enable amqp && \ # Install the sockets extension docker-php-ext-install sockets \ @@ -557,7 +564,7 @@ ENV OCI_VERSION=12 RUN if [ ${INSTALL_OCI8} = true ]; then \ # Install wget - apt-get update && apt-get install --no-install-recommends -y wget \ + apt-get install --no-install-recommends -yqq wget \ # Install Oracle Instantclient && mkdir /opt/oracle \ && cd /opt/oracle \ @@ -570,10 +577,9 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \ && ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so \ && rm -rf /opt/oracle/*.zip \ # Install PHP extensions deps - && apt-get update \ - && apt-get install --no-install-recommends -y \ - libaio-dev \ - freetds-dev && \ + && apt-get install --no-install-recommends -yqq \ + libaio-dev \ + freetds-dev && \ # Install PHP extensions if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8-2.0.10; \ @@ -595,12 +601,14 @@ RUN if [ ${INSTALL_OCI8} = true ]; then \ ARG INSTALL_IONCUBE=false RUN if [ ${INSTALL_IONCUBE} = true ]; then \ - # Install the php ioncube loader - curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ - && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ - && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ - && printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \ - && rm -rf /tmp/ioncube* \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") != "8" ]; then \ + # Install the php ioncube loader + curl -L -o /tmp/ioncube_loaders_lin_x86-64.tar.gz https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz \ + && tar zxpf /tmp/ioncube_loaders_lin_x86-64.tar.gz -C /tmp \ + && mv /tmp/ioncube/ioncube_loader_lin_${LARADOCK_PHP_VERSION}.so $(php -r "echo ini_get('extension_dir');")/ioncube_loader.so \ + && printf "zend_extension=ioncube_loader.so\n" > $PHP_INI_DIR/conf.d/0ioncube.ini \ + && rm -rf /tmp/ioncube* \ + ;fi \ ;fi ########################################################################### @@ -635,7 +643,7 @@ ARG INSTALL_INTL=false RUN if [ ${INSTALL_INTL} = true ]; then \ # Install intl and requirements - apt-get install -y zlib1g-dev libicu-dev g++ && \ + apt-get install -yqq zlib1g-dev libicu-dev g++ && \ docker-php-ext-configure intl && \ docker-php-ext-install intl \ ;fi @@ -649,7 +657,7 @@ ARG INSTALL_GHOSTSCRIPT=false RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \ # Install the ghostscript extension # for PDF editing - apt-get install -y \ + apt-get install -yqq \ poppler-utils \ ghostscript \ ;fi @@ -661,7 +669,7 @@ RUN if [ ${INSTALL_GHOSTSCRIPT} = true ]; then \ ARG INSTALL_LDAP=false RUN if [ ${INSTALL_LDAP} = true ]; then \ - apt-get install -y libldap2-dev && \ + apt-get install -yqq libldap2-dev && \ docker-php-ext-configure ldap --with-libdir=lib/x86_64-linux-gnu/ && \ docker-php-ext-install ldap \ ;fi @@ -685,12 +693,12 @@ RUN set -eux; \ # Ref from https://github.com/Microsoft/msphpsql/wiki/Dockerfile-for-adding-pdo_sqlsrv-and-sqlsrv-to-official-php-image ########################################################################### # Add Microsoft repo for Microsoft ODBC Driver 13 for Linux - apt-get install -y apt-transport-https gnupg \ + apt-get install -yqq apt-transport-https gnupg \ && curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \ && curl https://packages.microsoft.com/config/debian/9/prod.list > /etc/apt/sources.list.d/mssql-release.list \ && apt-get update -yqq \ # Install Dependencies - && ACCEPT_EULA=Y apt-get install -y unixodbc unixodbc-dev libgss3 odbcinst msodbcsql17 locales \ + && ACCEPT_EULA=Y apt-get install -yqq unixodbc unixodbc-dev libgss3 odbcinst msodbcsql17 locales \ && echo "en_US.UTF-8 UTF-8" > /etc/locale.gen \ # link local aliases && ln -sfn /etc/locale.alias /usr/share/locale/locale.alias \ @@ -716,7 +724,7 @@ USER root ARG INSTALL_IMAGE_OPTIMIZERS=false RUN if [ ${INSTALL_IMAGE_OPTIMIZERS} = true ]; then \ - apt-get install -y jpegoptim optipng pngquant gifsicle \ + apt-get install -yqq jpegoptim optipng pngquant gifsicle \ ;fi ########################################################################### @@ -730,9 +738,8 @@ ARG IMAGEMAGICK_VERSION=latest ENV IMAGEMAGICK_VERSION ${IMAGEMAGICK_VERSION} RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \ - apt-get install -y libmagickwand-dev imagemagick && \ + apt-get install -yqq libmagickwand-dev imagemagick && \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ - apt-get install -y git && \ cd /tmp && \ if [ ${IMAGEMAGICK_VERSION} = "latest" ]; then \ git clone https://github.com/Imagick/imagick; \ @@ -758,7 +765,7 @@ RUN if [ ${INSTALL_IMAGEMAGICK} = true ]; then \ ARG INSTALL_SMB=false RUN if [ ${INSTALL_SMB} = true ]; then \ - apt-get install -y smbclient php-smbclient coreutils \ + apt-get install -yqq smbclient php-smbclient coreutils \ ;fi ########################################################################### @@ -768,7 +775,7 @@ RUN if [ ${INSTALL_SMB} = true ]; then \ ARG INSTALL_IMAP=false RUN if [ ${INSTALL_IMAP} = true ]; then \ - apt-get install -y libc-client-dev libkrb5-dev && \ + apt-get install -yqq libc-client-dev libkrb5-dev && \ docker-php-ext-configure imap --with-kerberos --with-imap-ssl && \ docker-php-ext-install imap \ ;fi @@ -798,7 +805,7 @@ ENV LARADOCK_PHALCON_VERSION ${LARADOCK_PHALCON_VERSION} COPY ./phalcon.ini /usr/local/etc/php/conf.d/phalcon.ini.disable RUN if [ $INSTALL_PHALCON = true ]; then \ - apt-get update && apt-get install -y unzip libpcre3-dev gcc make re2c git automake autoconf\ + apt-get install -yqq unzip libpcre3-dev gcc make re2c git automake autoconf\ && git clone https://github.com/jbboehr/php-psr.git \ && cd php-psr \ && phpize \ @@ -838,7 +845,7 @@ USER root ARG INSTALL_YAML=false RUN if [ ${INSTALL_YAML} = true ]; then \ - apt-get install libyaml-dev -y ; \ + apt-get install libyaml-dev -yqq; \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ pecl install -a yaml-1.3.2; \ else \ @@ -854,7 +861,7 @@ RUN if [ ${INSTALL_YAML} = true ]; then \ ARG INSTALL_RDKAFKA=false RUN if [ ${INSTALL_RDKAFKA} = true ]; then \ - apt-get install -y librdkafka-dev && \ + apt-get install -yqq librdkafka-dev && \ pecl install rdkafka && \ docker-php-ext-enable rdkafka \ ;fi @@ -866,7 +873,7 @@ RUN if [ ${INSTALL_RDKAFKA} = true ]; then \ ARG INSTALL_GETTEXT=false RUN if [ ${INSTALL_GETTEXT} = true ]; then \ - apt-get install -y zlib1g-dev libicu-dev g++ libpq-dev libssl-dev gettext && \ + apt-get install -yqq zlib1g-dev libicu-dev g++ libpq-dev libssl-dev gettext && \ docker-php-ext-install gettext \ ;fi @@ -878,7 +885,7 @@ ARG INSTALL_ADDITIONAL_LOCALES=false ARG ADDITIONAL_LOCALES RUN if [ ${INSTALL_ADDITIONAL_LOCALES} = true ]; then \ - apt-get install -y locales \ + apt-get install -yqq locales \ && echo '' >> /usr/share/locale/locale.alias \ && temp="${ADDITIONAL_LOCALES%\"}" \ && temp="${temp#\"}" \ @@ -958,7 +965,7 @@ USER root ARG INSTALL_AUDIOWAVEFORM=false RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ - apt-get -y install git wget make cmake gcc g++ libmad0-dev libid3tag0-dev libsndfile1-dev libgd-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \ + apt-get -y install wget make cmake gcc g++ libmad0-dev libid3tag0-dev libsndfile1-dev libgd-dev libboost-filesystem-dev libboost-program-options-dev libboost-regex-dev \ && git clone https://github.com/bbc/audiowaveform.git \ && cd audiowaveform \ && wget https://github.com/google/googletest/archive/release-1.10.0.tar.gz \ @@ -982,17 +989,17 @@ USER root ARG INSTALL_WKHTMLTOPDF=false RUN if [ ${INSTALL_WKHTMLTOPDF} = true ]; then \ - apt-get install -y \ - libxrender1 \ - libfontconfig1 \ - libx11-dev \ - libjpeg62 \ - libxtst6 \ - fontconfig \ - libjpeg62-turbo \ - xfonts-base \ - xfonts-75dpi \ - wget \ + apt-get install -yqq \ + libxrender1 \ + libfontconfig1 \ + libx11-dev \ + libjpeg62 \ + libxtst6 \ + fontconfig \ + libjpeg62-turbo \ + xfonts-base \ + xfonts-75dpi \ + wget \ && wget https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-1/wkhtmltox_0.12.6-1.stretch_amd64.deb \ && dpkg -i wkhtmltox_0.12.6-1.stretch_amd64.deb \ && apt -f install \ From e8e4790db2a9d2385791b5f2fe4ee4753e769241 Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Mon, 22 Mar 2021 00:00:38 +0800 Subject: [PATCH 05/10] feat(ioncube extension): add github actions installation --- .github/workflows/main-ci.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/main-ci.yml b/.github/workflows/main-ci.yml index ad44a60a..8f79f598 100644 --- a/.github/workflows/main-ci.yml +++ b/.github/workflows/main-ci.yml @@ -37,7 +37,6 @@ jobs: sed -i -- 's/AMQP=true/AMQP=false/g' .env sed -i -- 's/MEMCACHED=true/MEMCACHED=false/g' .env sed -i -- 's/OCI8=true/OCI8=false/g' .env - sed -i -- 's/IONCUBE=true/IONCUBE=false/g' .env docker-compose build ${{ matrix.service }} build-other: From 4270f1db71379b7775575dbb3b1fb0e3699b2274 Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 18:10:08 +0200 Subject: [PATCH 06/10] fix(YAML extension): get built YAML extension for all versions in all services We need to build yaml extension for `workspace`, `php-fpm` and `laravel-horizon` images. Turn on YAML for GitHub Actions. --- .github/workflows/main-ci.yml | 3 +-- php-fpm/Dockerfile | 12 +++++++----- workspace/Dockerfile | 16 ++++++++-------- 3 files changed, 16 insertions(+), 15 deletions(-) diff --git a/.github/workflows/main-ci.yml b/.github/workflows/main-ci.yml index d1ea0b71..3ab1f21c 100644 --- a/.github/workflows/main-ci.yml +++ b/.github/workflows/main-ci.yml @@ -1,6 +1,6 @@ name: CI -on: +on: push: branches: '**' tags: '**' @@ -32,7 +32,6 @@ jobs: sed -i -- 's/PHALCON=true/PHALCON=false/g' .env sed -i -- 's/RDKAFKA=true/RDKAFKA=false/g' .env sed -i -- 's/MAILPARSE=true/MAILPARSE=false/g' .env - sed -i -- 's/YAML=true/YAML=false/g' .env sed -i -- 's/MSSQL=true/MSSQL=false/g' .env sed -i -- 's/AMQP=true/AMQP=false/g' .env sed -i -- 's/MEMCACHED=true/MEMCACHED=false/g' .env diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 06fbcdf6..88784a92 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -840,11 +840,13 @@ ARG INSTALL_YAML=false RUN if [ ${INSTALL_YAML} = true ]; then \ apt-get install libyaml-dev -y ; \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ - pecl install -a yaml-1.3.2; \ - else \ - pecl install yaml; \ - fi && \ - docker-php-ext-enable yaml \ + echo '' | pecl install -a yaml-1.3.2; \ + elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \ + echo '' | pecl install yaml-2.0.4; \ + else + echo '' | pecl install yaml; \ + fi \ + && docker-php-ext-enable yaml; \ ;fi ########################################################################### diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 534e4c7a..4cbcf78f 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -1388,12 +1388,14 @@ ARG INSTALL_YAML=false RUN if [ ${INSTALL_YAML} = true ]; then \ apt-get install libyaml-dev -y ; \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ - pecl install -a yaml-1.3.2; \ - else \ - pecl install yaml; \ - fi && \ - echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini && \ - ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \ + echo '' | pecl install -a yaml-1.3.2; \ + elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \ + echo '' | pecl install yaml-2.0.4; \ + else + echo '' | pecl install yaml; \ + fi \ + && echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini \ + && ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini; \ ;fi ########################################################################### @@ -1632,8 +1634,6 @@ RUN if [ ${SHELL_OH_MY_ZSH} = true ]; then \ echo "" >> ~/.zshrc \ ;fi -USER root - # #-------------------------------------------------------------------------- # Final Touch From 95fe1b179f4f60ce2a1d050621c3fe7d8e689974 Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 18:41:48 +0200 Subject: [PATCH 07/10] fix(YAML extension): avoid typo --- workspace/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 4cbcf78f..47bd4adb 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -1395,7 +1395,7 @@ RUN if [ ${INSTALL_YAML} = true ]; then \ echo '' | pecl install yaml; \ fi \ && echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini \ - && ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini; \ + && ln -s /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini /etc/php/${LARADOCK_PHP_VERSION}/cli/conf.d/35-yaml.ini \ ;fi ########################################################################### From 9317b71ebcb07b034dc6c8e9f775e800c2297344 Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 18:46:47 +0200 Subject: [PATCH 08/10] fix(YAML extension): avoid typo --- php-fpm/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 88784a92..27a839e0 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -843,7 +843,7 @@ RUN if [ ${INSTALL_YAML} = true ]; then \ echo '' | pecl install -a yaml-1.3.2; \ elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \ echo '' | pecl install yaml-2.0.4; \ - else + else \ echo '' | pecl install yaml; \ fi \ && docker-php-ext-enable yaml; \ From ad2b94fa60bff9271592f33152610d84d5b3db95 Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 18:51:06 +0200 Subject: [PATCH 09/10] fix(YAML extension): avoid typo --- workspace/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 47bd4adb..578a795b 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -1391,7 +1391,7 @@ RUN if [ ${INSTALL_YAML} = true ]; then \ echo '' | pecl install -a yaml-1.3.2; \ elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \ echo '' | pecl install yaml-2.0.4; \ - else + else \ echo '' | pecl install yaml; \ fi \ && echo "extension=yaml.so" >> /etc/php/${LARADOCK_PHP_VERSION}/mods-available/yaml.ini \ From 5686c698e7afae651d1e0efddbdc3779ed3374eb Mon Sep 17 00:00:00 2001 From: Pavel Savushkin Date: Sun, 21 Mar 2021 19:21:34 +0200 Subject: [PATCH 10/10] fix(YAML extension): avoid typo --- php-fpm/Dockerfile | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 27a839e0..980ad426 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -838,15 +838,15 @@ USER root ARG INSTALL_YAML=false RUN if [ ${INSTALL_YAML} = true ]; then \ - apt-get install libyaml-dev -y ; \ - if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ + apt-get install -yqq libyaml-dev \ + && if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ echo '' | pecl install -a yaml-1.3.2; \ elif [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "0" ]; then \ echo '' | pecl install yaml-2.0.4; \ else \ echo '' | pecl install yaml; \ fi \ - && docker-php-ext-enable yaml; \ + && docker-php-ext-enable yaml \ ;fi ###########################################################################