Merge pull request #3 from nupplaphil/feat/php_upgrade

Update PHP CI images
This commit is contained in:
Hypolite Petovan 2021-05-16 11:04:40 -04:00 committed by GitHub
commit b1cc9b3463
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
6 changed files with 103 additions and 7 deletions

View file

@ -1,20 +1,30 @@
FROM debian:jessie FROM debian:buster
# install the PHP extensions we need # install the PHP extensions we need
# see https://friendi.ca/resources/requirements/ # see https://friendi.ca/resources/requirements/
RUN set -ex; \ RUN set -ex; \
apt-get update; \ apt-get update; \
apt-get install -y wget gnupg2 libzip2 apt-transport-https lsb-release ca-certificates; \ DEBIAN_FRONTEND=noninteractive apt-get install -q -y wget gnupg2 apt-transport-https lsb-release ca-certificates mariadb-client; \
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \ wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \ echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \
apt-get update; \ apt-get update; \
apt-get install -y php7.3-gd git curl openssl \ DEBIAN_FRONTEND=noninteractive apt-get install -q -y php7.3-gd git curl openssl \
php7.3-cli php7.3-curl php7.3-mysql wget make \ php7.3-cli php7.3-curl php7.3-mysql wget make \
php7.3-redis php7.3-memcached php7.3-memcache php7.3-json \ php7.3-redis php7.3-memcached php7.3-memcache php7.3-json \
php7.3-apcu php7.3-xdebug php7.3-xml php7.3-zip php7.3-dev php7.3-mbstring \ php7.3-apcu php7.3-xdebug php7.3-xml php7.3-zip php7.3-dev php7.3-mbstring; \
; \ apt-get autoremove -y; apt-get autoclean; apt-get clean; \
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*; rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*;
RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype json iconv pcntl openssl RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype json iconv pcntl openssl
RUN set -ex; \
curl -O -L https://phar.phpunit.de/phpunit-8.phar; \
chmod +x phpunit-8.phar; \
mv phpunit-8.phar /usr/local/bin/phpunit;
RUN set -ex; \
curl -O -L https://getcomposer.org/download/1.6.2/composer.phar; \
chmod +x composer.phar; \
mv composer.phar /usr/local/bin/composer;
RUN phpdismod xdebug RUN phpdismod xdebug
ADD php.ini /etc/php/7.1/cli/conf.d/friendica.ini ADD php.ini /etc/php/7.3/cli/conf.d/friendica.ini

View file

@ -7,4 +7,6 @@ opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000 opcache.max_accelerated_files=10000
opcache.memory_consumption=128 opcache.memory_consumption=128
opcache.save_comments=1 opcache.save_comments=1
opcache.revalidate_freq=1 opcache.revalidate_freq=1
apc.enabled=1
apc.enable_cli=1

30
php7.4/Dockerfile Normal file
View file

@ -0,0 +1,30 @@
FROM debian:buster
# install the PHP extensions we need
# see https://friendi.ca/resources/requirements/
RUN set -ex; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y wget gnupg2 apt-transport-https lsb-release ca-certificates mariadb-client; \
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y php7.4-gd git curl openssl \
php7.4-cli php7.4-curl php7.4-mysql wget make \
php7.4-redis php7.4-memcached php7.4-memcache php7.4-json \
php7.4-apcu php7.4-xdebug php7.4-xml php7.4-zip php7.4-dev php7.4-mbstring; \
apt-get autoremove -y; apt-get autoclean; apt-get clean; \
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*;
RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype json iconv pcntl openssl
RUN set -ex; \
curl -O -L https://phar.phpunit.de/phpunit-8.phar; \
chmod +x phpunit-8.phar; \
mv phpunit-8.phar /usr/local/bin/phpunit;
RUN set -ex; \
curl -O -L https://getcomposer.org/download/1.6.2/composer.phar; \
chmod +x composer.phar; \
mv composer.phar /usr/local/bin/composer;
RUN phpdismod xdebug
ADD php.ini /etc/php/7.4/cli/conf.d/friendica.ini

12
php7.4/php.ini Normal file
View file

@ -0,0 +1,12 @@
memory_limit = 768M
phar.readonly = 0 ; only for building phar files on CI - should be disabled on production environments
; Opcache
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
apc.enabled=1
apc.enable_cli=1

30
php8.0/Dockerfile Normal file
View file

@ -0,0 +1,30 @@
FROM debian:buster
# install the PHP extensions we need
# see https://friendi.ca/resources/requirements/
RUN set -ex; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y wget gnupg2 apt-transport-https lsb-release ca-certificates mariadb-client; \
wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg; \
echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list; \
apt-get update; \
DEBIAN_FRONTEND=noninteractive apt-get install -q -y php8.0-gd git curl openssl \
php8.0-cli php8.0-curl php8.0-mysql wget make \
php8.0-redis php8.0-memcached php8.0-memcache \
php8.0-apcu php8.0-xdebug php8.0-xml php8.0-zip php8.0-dev php8.0-mbstring; \
apt-get autoremove -y; apt-get autoclean; apt-get clean; \
rm -rf /tmp/* /var/tmp/* /var/lib/apt/lists/*;
RUN phpenmod curl pdo pdo_mysql xml gd zip opcache mbstring posix ctype iconv pcntl openssl
RUN set -ex; \
curl -O -L https://phar.phpunit.de/phpunit-8.phar; \
chmod +x phpunit-8.phar; \
mv phpunit-8.phar /usr/local/bin/phpunit;
RUN set -ex; \
curl -O -L https://getcomposer.org/download/1.10.15/composer.phar; \
chmod +x composer.phar; \
mv composer.phar /usr/local/bin/composer;
RUN phpdismod xdebug
ADD php.ini /etc/php/8.0/cli/conf.d/friendica.ini

12
php8.0/php.ini Normal file
View file

@ -0,0 +1,12 @@
memory_limit = 768M
phar.readonly = 0 ; only for building phar files on CI - should be disabled on production environments
; Opcache
opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1
apc.enabled=1
apc.enable_cli=1