From 9b0fc99d91ab0734966084532b68164d8f2c137d Mon Sep 17 00:00:00 2001 From: Matias Beltramone Date: Tue, 17 Dec 2019 10:58:34 -0300 Subject: [PATCH 1/4] Update to PHP7.4 --- Dockerfile | 71 ++++++++++++++++++++++++++++++++++++++---------------- 1 file changed, 50 insertions(+), 21 deletions(-) diff --git a/Dockerfile b/Dockerfile index d798259..66b706a 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,7 @@ -FROM phusion/baseimage:0.9.18 +FROM phusion/baseimage MAINTAINER Harsh Vakharia MAINTAINER Leandro Banchio +MAINTAINER Mati Beltramone # Default baseimage settings ENV HOME /root @@ -13,38 +14,65 @@ RUN locale-gen en_US.UTF-8 && \ export LANG=en_US.UTF-8 && \ add-apt-repository -y ppa:ondrej/php && \ apt-get update && \ - apt-get upgrade -y && \ apt-get install -y --force-yes nginx \ - php7.1-zip php7.1-fpm php7.1-mysql php7.1-redis php7.1-mcrypt \ - php7.1-imagick php7.1-xdebug php7.1-apcu php7.1-xml \ - php7.1-sqlite3 php-mbstring git \ - php7.1-curl php7.1-gd php7.1-intl && \ + php7.4-fpm \ + php7.4-zip \ + php7.4-mysql \ + php7.4-redis \ + php7.4-xml \ + php7.4-xdebug \ + php7.4-common \ + php7.4-sqlite \ + php7.4-curl \ + php7.4-zmq \ + php7.4-gd \ + php7.4-imagick \ + php7.4-soap \ + php7.4-mbstring \ + php7.4-intl \ + php7.4-mongodb \ + unzip \ + git && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* \ /tmp/* \ /var/tmp/* +# Configure users +RUN groupadd -g 1000 user && useradd --no-log-init -u 1000 -b /var/www -M -g user user + # Configure nginx RUN echo "daemon off;" >> /etc/nginx/nginx.conf RUN sed -i "s/sendfile on/sendfile off/" /etc/nginx/nginx.conf +RUN sed -i "s/user www-data/user user/" /etc/nginx/nginx.conf +RUN sed -i "s/user = www-data/user = user/" /etc/php/7.4/fpm/pool.d/www.conf +RUN sed -i "s/group = www-data/group = user/" /etc/php/7.4/fpm/pool.d/www.conf +RUN sed -i "s/listener.owner = www-data/listener.owner = user/" /etc/php/7.4/fpm/pool.d/www.conf +RUN sed -i "s/listener.group = www-data/listener.group = user/" /etc/php/7.4/fpm/pool.d/www.conf RUN mkdir -p /var/www +RUN mkdir -p /run/php +RUN mkdir -m 777 /tmp/php # Configure PHP -RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.1/fpm/php.ini -RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php/7.1/fpm/php-fpm.conf -##For dev enviroment -RUN sed -i 's/display_errors =.*/display_errors = On/g' /etc/php/7.1/fpm/php.ini -RUN sed -i 's/display_startup_errors =.*/display_startup_errors = On/g' /etc/php/7.1/fpm/php.ini -RUN sed -i 's/upload_max_filesize =.*/upload_max_filesize = 64M/g' /etc/php/7.1/fpm/php.ini -##Updated for PHP 7.0 -RUN sed -i "s/pid =.*/pid = \/var\/run\/php-fpm.pid/" /etc/php/7.1/fpm/php-fpm.conf -RUN sed -i "s/listen =.*sock/listen = \/var\/run\/php-fpm.sock/" /etc/php/7.1/fpm/pool.d/www.conf -## -RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.1/cli/php.ini -RUN sed -i "s/date.timezone =.*/date.timezone = America\/Argentina\/Cordoba/g" /etc/php/7.1/fpm/php.ini -RUN phpenmod mcrypt +RUN sed -i "s/;session.save_path =.*/session.save_path = \/tmp\/php/" /etc/php/7.4/fpm/php.ini +RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.4/fpm/php.ini +RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/7.4/fpm/php.ini +RUN sed -i "s/variables_order =.*/variables_order = \"EGPCS\"/" /etc/php/7.4/fpm/php.ini +RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php/7.4/fpm/php-fpm.conf +RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.4/cli/php.ini +RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/7.4/cli/php.ini +RUN sed -i "s/;clear_env =.*/clear_env = no/" /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/cli/php.ini + +RUN echo "xdebug.idekey=phpstorm" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_enable=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_port=9000" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_connect_back=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.max_nesting_level=600" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.scream=0" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.cli_color=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.show_local_vars=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini + RUN phpenmod xdebug -RUN phpenmod zip # Add nginx service RUN mkdir /etc/service/nginx @@ -56,10 +84,11 @@ RUN mkdir /etc/ser ADD build/php/run.sh /etc/service/phpfpm/run RUN chmod +x /etc/service/phpfpm/run +RUN chmod 777 /var/lib/php -R # Add nginx VOLUME ["/var/www", "/etc/nginx/sites-available", "/etc/nginx/sites-enabled"] # Workdir WORKDIR /var/www -EXPOSE 80 +EXPOSE 80 \ No newline at end of file From 226c5265e505add9f1c482015a05235fbcecda8d Mon Sep 17 00:00:00 2001 From: Edu Culasso Date: Fri, 21 Aug 2020 12:08:04 -0300 Subject: [PATCH 2/4] Add bcmath extension --- Dockerfile | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 66b706a..bac96f7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,6 +31,7 @@ RUN locale-gen en_US.UTF-8 && \ php7.4-mbstring \ php7.4-intl \ php7.4-mongodb \ + php7.4-bcmath \ unzip \ git && \ apt-get clean && \ @@ -91,4 +92,4 @@ VOLUME ["/var/www", "/etc/nginx/sites-available", "/etc/nginx/sites-enabled"] # Workdir WORKDIR /var/www -EXPOSE 80 \ No newline at end of file +EXPOSE 80 From 10de53f93e5f8e6dc3b13706631173ab7296a681 Mon Sep 17 00:00:00 2001 From: BomberMan Date: Fri, 21 Aug 2020 13:16:44 -0300 Subject: [PATCH 3/4] Change base image --- .gitignore | 0 Dockerfile | 2 +- 2 files changed, 1 insertion(+), 1 deletion(-) mode change 100644 => 100755 .gitignore mode change 100644 => 100755 Dockerfile diff --git a/.gitignore b/.gitignore old mode 100644 new mode 100755 diff --git a/Dockerfile b/Dockerfile old mode 100644 new mode 100755 index bac96f7..e33f90b --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM phusion/baseimage +FROM phusion/baseimage:18.04-1.0.0 MAINTAINER Harsh Vakharia MAINTAINER Leandro Banchio MAINTAINER Mati Beltramone From 76a1702f4af494a704dd240983bfb1cdff1d15ff Mon Sep 17 00:00:00 2001 From: BomberMan Date: Wed, 16 Dec 2020 16:14:29 -0300 Subject: [PATCH 4/4] Update to php8.0 --- Dockerfile | 79 ++++++++++++++++++++++++------------------------ build/php/run.sh | 2 +- 2 files changed, 41 insertions(+), 40 deletions(-) diff --git a/Dockerfile b/Dockerfile index e33f90b..b61f39d 100755 --- a/Dockerfile +++ b/Dockerfile @@ -2,6 +2,7 @@ FROM phusion/baseimage:18.04-1.0.0 MAINTAINER Harsh Vakharia MAINTAINER Leandro Banchio MAINTAINER Mati Beltramone +MAINTAINER Edu Culasso # Default baseimage settings ENV HOME /root @@ -15,23 +16,23 @@ RUN locale-gen en_US.UTF-8 && \ add-apt-repository -y ppa:ondrej/php && \ apt-get update && \ apt-get install -y --force-yes nginx \ - php7.4-fpm \ - php7.4-zip \ - php7.4-mysql \ - php7.4-redis \ - php7.4-xml \ - php7.4-xdebug \ - php7.4-common \ - php7.4-sqlite \ - php7.4-curl \ - php7.4-zmq \ - php7.4-gd \ - php7.4-imagick \ - php7.4-soap \ - php7.4-mbstring \ - php7.4-intl \ - php7.4-mongodb \ - php7.4-bcmath \ + php8.0-fpm \ + php8.0-zip \ + php8.0-mysql \ + php8.0-redis \ + php8.0-xml \ + php8.0-xdebug \ + php8.0-common \ + php8.0-sqlite \ + php8.0-curl \ + php8.0-zmq \ + php8.0-gd \ + php8.0-imagick \ + php8.0-soap \ + php8.0-mbstring \ + php8.0-intl \ + php8.0-mongodb \ + php8.0-bcmath \ unzip \ git && \ apt-get clean && \ @@ -46,43 +47,43 @@ RUN groupadd -g 1000 user && useradd --no-log-init -u 1000 -b /var/www -M -g use RUN echo "daemon off;" >> /etc/nginx/nginx.conf RUN sed -i "s/sendfile on/sendfile off/" /etc/nginx/nginx.conf RUN sed -i "s/user www-data/user user/" /etc/nginx/nginx.conf -RUN sed -i "s/user = www-data/user = user/" /etc/php/7.4/fpm/pool.d/www.conf -RUN sed -i "s/group = www-data/group = user/" /etc/php/7.4/fpm/pool.d/www.conf -RUN sed -i "s/listener.owner = www-data/listener.owner = user/" /etc/php/7.4/fpm/pool.d/www.conf -RUN sed -i "s/listener.group = www-data/listener.group = user/" /etc/php/7.4/fpm/pool.d/www.conf +RUN sed -i "s/user = www-data/user = user/" /etc/php/8.0/fpm/pool.d/www.conf +RUN sed -i "s/group = www-data/group = user/" /etc/php/8.0/fpm/pool.d/www.conf +RUN sed -i "s/listener.owner = www-data/listener.owner = user/" /etc/php/8.0/fpm/pool.d/www.conf +RUN sed -i "s/listener.group = www-data/listener.group = user/" /etc/php/8.0/fpm/pool.d/www.conf RUN mkdir -p /var/www RUN mkdir -p /run/php RUN mkdir -m 777 /tmp/php # Configure PHP -RUN sed -i "s/;session.save_path =.*/session.save_path = \/tmp\/php/" /etc/php/7.4/fpm/php.ini -RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.4/fpm/php.ini -RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/7.4/fpm/php.ini -RUN sed -i "s/variables_order =.*/variables_order = \"EGPCS\"/" /etc/php/7.4/fpm/php.ini -RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php/7.4/fpm/php-fpm.conf -RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/7.4/cli/php.ini -RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/7.4/cli/php.ini -RUN sed -i "s/;clear_env =.*/clear_env = no/" /etc/php/7.4/fpm/pool.d/www.conf /etc/php/7.4/cli/php.ini +RUN sed -i "s/;session.save_path =.*/session.save_path = \/tmp\/php/" /etc/php/8.0/fpm/php.ini +RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/8.0/fpm/php.ini +RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/8.0/fpm/php.ini +RUN sed -i "s/variables_order =.*/variables_order = \"EGPCS\"/" /etc/php/8.0/fpm/php.ini +RUN sed -i -e "s/;daemonize\s*=\s*yes/daemonize = no/g" /etc/php/8.0/fpm/php-fpm.conf +RUN sed -i "s/;cgi.fix_pathinfo=1/cgi.fix_pathinfo=0/" /etc/php/8.0/cli/php.ini +RUN sed -i "s/;date.timezone =.*/date.timezone = Asia\/Kolkata/" /etc/php/8.0/cli/php.ini +RUN sed -i "s/;clear_env =.*/clear_env = no/" /etc/php/8.0/fpm/pool.d/www.conf /etc/php/8.0/cli/php.ini -RUN echo "xdebug.idekey=phpstorm" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.remote_enable=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.remote_port=9000" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.remote_connect_back=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.max_nesting_level=600" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.scream=0" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.cli_color=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini -RUN echo "xdebug.show_local_vars=1" >> /etc/php/7.4/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.idekey=phpstorm" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_enable=1" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_port=9000" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.remote_connect_back=1" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.max_nesting_level=600" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.scream=0" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.cli_color=1" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini +RUN echo "xdebug.show_local_vars=1" >> /etc/php/8.0/fpm/conf.d/20-xdebug.ini RUN phpenmod xdebug # Add nginx service RUN mkdir /etc/service/nginx -ADD build/nginx/run.sh /etc/service/nginx/run +ADD ./build/nginx/run.sh /etc/service/nginx/run RUN chmod +x /etc/service/nginx/run # Add PHP service RUN mkdir /etc/service/phpfpm -ADD build/php/run.sh /etc/service/phpfpm/run +ADD ./build/php/run.sh /etc/service/phpfpm/run RUN chmod +x /etc/service/phpfpm/run RUN chmod 777 /var/lib/php -R diff --git a/build/php/run.sh b/build/php/run.sh index f349c8d..32fff50 100755 --- a/build/php/run.sh +++ b/build/php/run.sh @@ -1,3 +1,3 @@ #!/usr/bin/env bash -php-fpm7.1 -c /etc/php/7.1/fpm +php-fpm8.0 -c /etc/php/8.0/fpm