From b03547dbbeef13b4b64f54698cf9e1f86038aa62 Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Tue, 6 Apr 2021 20:52:26 +0800 Subject: [PATCH 1/2] fix: php-worker extension install --- .github/workflows/main-ci.yml | 4 ++-- php-worker/Dockerfile | 37 +++++++++++++++++++++++++---------- 2 files changed, 29 insertions(+), 12 deletions(-) diff --git a/.github/workflows/main-ci.yml b/.github/workflows/main-ci.yml index 68bc0b7d..70c53dc5 100644 --- a/.github/workflows/main-ci.yml +++ b/.github/workflows/main-ci.yml @@ -23,9 +23,9 @@ jobs: PHP_VERSION: ${{ matrix.php_version }} run: | cp env-example .env - sed -i -- '99,278s/=false/=true/g' .env - sed -i -- 's/GNUPG=false/GNUPG=true/g' .env + sed -i -- '99,313s/=false/=true/g' .env sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env + sed -i -- 's/GNUPG=false/GNUPG=true/g' .env sed -i -- 's/PHPDBG=true/PHPDBG=false/g' .env sed -i -- 's/CASSANDRA=true/CASSANDRA=false/g' .env sed -i -- 's/GEARMAN=true/GEARMAN=false/g' .env diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile index 9c2a60a1..33ed8614 100644 --- a/php-worker/Dockerfile +++ b/php-worker/Dockerfile @@ -79,9 +79,13 @@ RUN set -eux; if [ ${INSTALL_GNUPG} = true ]; then \ #Install GD package: ARG INSTALL_GD=false RUN if [ ${INSTALL_GD} = true ]; then \ - apk add --update --no-cache freetype-dev libjpeg-turbo-dev jpeg-dev libpng-dev; \ - docker-php-ext-configure gd --with-freetype-dir=/usr/lib/ --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/ && \ - docker-php-ext-install gd \ + apk add --update --no-cache freetype-dev libjpeg-turbo-dev jpeg-dev libpng-dev; \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ] && [ $(php -r "echo PHP_MINOR_VERSION;") = "4" ]; then \ + docker-php-ext-configure gd --with-freetype --with-jpeg --with-png; \ + else \ + docker-php-ext-configure gd --with-freetype-dir=/usr/lib/ --with-jpeg-dir=/usr/lib/ --with-png-dir=/usr/lib/; \ + fi; \ + docker-php-ext-install gd \ ;fi #Install ImageMagick: @@ -324,9 +328,13 @@ RUN if [ $INSTALL_GHOSTSCRIPT = true ]; then \ ARG INSTALL_REDIS=false RUN if [ ${INSTALL_REDIS} = true ]; then \ # Install Redis Extension - printf "\n" | pecl install -o -f redis \ - && rm -rf /tmp/pear \ - && docker-php-ext-enable redis \ + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ + printf "\n" | pecl install -o -f redis-4.3.0; \ + else \ + printf "\n" | pecl install -o -f redis; \ + fi; \ + rm -rf /tmp/pear; \ + docker-php-ext-enable redis \ ;fi ########################################################################### @@ -360,8 +368,11 @@ RUN if [ ${INSTALL_TAINT} = true ]; then \ # Install Php TAINT Extension if [ $(php -r "echo PHP_MAJOR_VERSION;") = "7" ]; then \ pecl install taint; \ - fi && \ - docker-php-ext-enable taint \ + docker-php-ext-enable taint; \ + php -m | grep -q 'taint'; \ + else \ + echo 'taint not Support'; \ + fi \ ;fi ########################################################################### @@ -383,8 +394,14 @@ RUN if [ ${INSTALL_IMAP} = true ]; then \ ARG INSTALL_XMLRPC=false RUN if [ ${INSTALL_XMLRPC} = true ]; then \ - docker-php-ext-install xmlrpc \ -;fi + if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ + pecl install xmlrpc-1.0.0RC2; \ + docker-php-ext-enable xmlrpc; \ + else \ + docker-php-ext-install xmlrpc; \ + fi; \ + php -m | grep -r 'xmlrpc'; \ + fi # #-------------------------------------------------------------------------- From 99cc94628c02baec4ff254546c34b9a851ed2968 Mon Sep 17 00:00:00 2001 From: "Shao Yu-Lung (Allen)" Date: Tue, 6 Apr 2021 23:23:37 +0800 Subject: [PATCH 2/2] fix: alpine ssl conflict --- php-worker/Dockerfile | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile index 33ed8614..3a02f9ea 100644 --- a/php-worker/Dockerfile +++ b/php-worker/Dockerfile @@ -32,15 +32,17 @@ RUN apk --update add wget \ cyrus-sasl-dev \ libgsasl-dev \ oniguruma-dev \ - openssl \ - openssl-dev \ + libressl \ + libressl-dev \ supervisor -RUN docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl +RUN pecl channel-update pecl.php.net; \ + docker-php-ext-install mysqli mbstring pdo pdo_mysql tokenizer xml pcntl + RUN if [ $(php -r "echo PHP_MAJOR_VERSION;") = "5" ]; then \ - pecl channel-update pecl.php.net && pecl install memcached-2.2.0 mcrypt-1.0.1 && docker-php-ext-enable memcached \ + pecl install memcached-2.2.0 mcrypt-1.0.1 && docker-php-ext-enable memcached \ ;else \ - pecl channel-update pecl.php.net && pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached \ + pecl install memcached mcrypt-1.0.1 && docker-php-ext-enable memcached \ ;fi # Add a non-root user: @@ -96,7 +98,6 @@ RUN set -eux; \ if [ ${INSTALL_IMAGEMAGICK} = true ]; then \ apk add --update --no-cache imagemagick-dev; \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ - apk add --update --no-cache git && \ cd /tmp && \ if [ ${IMAGEMAGICK_VERSION} = "latest" ]; then \ git clone https://github.com/Imagick/imagick; \ @@ -251,7 +252,6 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ ARG INSTALL_AMQP=false RUN if [ ${INSTALL_AMQP} = true ]; then \ - apk del -q openssl openssl-dev && \ apk --update add -q rabbitmq-c rabbitmq-c-dev && \ if [ $(php -r "echo PHP_MAJOR_VERSION;") = "8" ]; then \ printf "\n" | pecl install amqp-1.11.0beta; \ @@ -260,7 +260,6 @@ RUN if [ ${INSTALL_AMQP} = true ]; then \ fi && \ docker-php-ext-enable amqp && \ apk del -q rabbitmq-c-dev && \ - apk add --update -q openssl openssl-dev && \ docker-php-ext-install sockets \ ;fi @@ -382,7 +381,7 @@ RUN if [ ${INSTALL_TAINT} = true ]; then \ ARG INSTALL_IMAP=false RUN if [ ${INSTALL_IMAP} = true ]; then \ - apk add --update imap-dev openssl-dev && \ + apk add --update imap-dev && \ docker-php-ext-configure imap --with-imap --with-imap-ssl && \ docker-php-ext-install imap \ ;fi