diff --git a/.Jenkinsfile b/.Jenkinsfile index e622fc1..698310a 100644 --- a/.Jenkinsfile +++ b/.Jenkinsfile @@ -208,5 +208,20 @@ pipeline { } } } + + stage('Build php (Bullseye PHP 8.1)') { + steps { + script { + def deb11php81 = docker.build("evolix/php:deb11php81build${env.BUILD_ID}", "-f php/Dockerfile.bullseye81 php") + deb11php81.inside { + sh 'composer --version' + } + docker.withRegistry('', 'hub.docker') { + deb11php81.push('bullseye81') + deb11php81.push('8.1') + } + } + } + } } } diff --git a/php/Dockerfile.bullseye81 b/php/Dockerfile.bullseye81 new file mode 100644 index 0000000..c7fa34d --- /dev/null +++ b/php/Dockerfile.bullseye81 @@ -0,0 +1,39 @@ +FROM debian:bullseye + +LABEL maintainer="Equipe Evolix " + +COPY reg.asc /etc/apt/keyrings/evolix.asc +RUN apt-get update \ + && apt-get install -y --no-install-recommends \ + wget \ + apt-transport-https \ + ca-certificates \ + && wget -O /etc/apt/keyrings/sury.gpg \ + https://packages.sury.org/php/apt.gpg \ + && echo "deb [signed-by=/etc/apt/keyrings/sury.gpg] https://packages.sury.org/php/ bullseye main" \ + > /etc/apt/sources.list.d/sury.list \ + && echo "deb [signed-by=/etc/apt/keyrings/evolix.asc] http://pub.evolix.net/ bullseye-php81/" \ + > /etc/apt/sources.list.d/php81.list \ + && apt-get update \ + && apt-get install -y --no-install-recommends \ + php \ + php-fpm \ + php-cli \ + php-curl \ + php-mysql \ + php-pgsql \ + php-ldap \ + php-imap \ + php-gd \ + php8.1-ssh2 \ + php-xml \ + composer \ + libphp-phpmailer \ + && rm -rf /var/lib/apt/lists/* \ + && mkdir -p /run/php + +COPY z-evolinux-defaults.php81.ini /etc/php/8.1/fpm/conf.d/z-evolinux-defaults.ini +COPY pool.d-defaults.php81.conf /etc/php/8.1/fpm/pool.d/www.conf + +EXPOSE 9000 +CMD ["php-fpm8.1"] diff --git a/php/pool.d-defaults.php81.conf b/php/pool.d-defaults.php81.conf new file mode 100644 index 0000000..bd37700 --- /dev/null +++ b/php/pool.d-defaults.php81.conf @@ -0,0 +1,14 @@ +[global] +daemonize = no + +[www] +listen = 9000 +user = www-data +group = www-data +pm = ondemand +pm.max_children = 100 +pm.process_idle_timeout = 10s + +access.log = /proc/self/fd/2 +clear_env = no +catch_workers_output = yes diff --git a/php/z-evolinux-defaults.php81.ini b/php/z-evolinux-defaults.php81.ini new file mode 100644 index 0000000..c09fe13 --- /dev/null +++ b/php/z-evolinux-defaults.php81.ini @@ -0,0 +1,13 @@ +[PHP] + +short_open_tag = Off +expose_php = Off +display_errors = Off +log_errors = On +html_errors = Off +allow_url_fopen = Off +memory_limit = 128M +max_execution_time = 10 +open_basedir = /home:/var/www/html +disable_functions = exec, shell-exec, system, passthru, putenv, popen +error_log = /proc/self/fd/2