Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Upgrade PHP Version to 8.3 #19

Merged
merged 2 commits into from
May 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 29 additions & 29 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -6,35 +6,35 @@ LABEL Maintainer="Ernesto Serrano <info@ernesto.es>" \

# Install packages
RUN apk --no-cache add \
php82 \
php82-ctype \
php82-curl \
php82-dom \
php82-exif \
php82-fileinfo \
php82-fpm \
php82-gd \
php82-iconv \
php82-intl \
php82-json \
php82-mbstring \
php82-mysqli \
php82-opcache \
php82-openssl \
php82-pecl-apcu \
php82-pdo \
php82-pdo_mysql \
php82-pgsql \
php82-phar \
php82-session \
php82-simplexml \
php82-soap \
php82-sodium \
php82-tokenizer \
php82-xml \
php82-xmlreader \
php82-zip \
php82-zlib \
php83 \
php83-ctype \
php83-curl \
php83-dom \
php83-exif \
php83-fileinfo \
php83-fpm \
php83-gd \
php83-iconv \
php83-intl \
php83-json \
php83-mbstring \
php83-mysqli \
php83-opcache \
php83-openssl \
php83-pecl-apcu \
php83-pdo \
php83-pdo_mysql \
php83-pgsql \
php83-phar \
php83-session \
php83-simplexml \
php83-soap \
php83-sodium \
php83-tokenizer \
php83-xml \
php83-xmlreader \
php83-zip \
php83-zlib \
nginx \
runit \
curl \
Expand Down
8 changes: 4 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# Docker PHP-FPM 8.2 & Nginx 1.26 on Alpine Linux
# Docker PHP-FPM 8.3 & Nginx 1.26 on Alpine Linux

[![Docker Pulls](https://img.shields.io/docker/pulls/erseco/alpine-php-webserver.svg)](https://hub.docker.com/r/erseco/alpine-php-webserver/)
![Docker Image Size](https://img.shields.io/docker/image-size/erseco/alpine-php-webserver)
![nginx 1.26.0](https://img.shields.io/badge/nginx-1.26-brightgreen.svg)
![php 8.2](https://img.shields.io/badge/php-8.2-brightgreen.svg)
![php 8.3](https://img.shields.io/badge/php-8.3-brightgreen.svg)
![License MIT](https://img.shields.io/badge/license-MIT-blue.svg)

Example PHP-FPM 8.2 & Nginx 1.26 setup for Docker, build on [Alpine Linux](https://www.alpinelinux.org/).
Example PHP-FPM 8.3 & Nginx 1.26 setup for Docker, build on [Alpine Linux](https://www.alpinelinux.org/).
The image is only +/- 25MB large.

Repository: https://github.com/erseco/alpine-php-webserver

* Built on the lightweight and secure Alpine Linux distribution
* Very small Docker image size (+/-25MB)
* Uses PHP 8.2 for better performance, lower cpu usage & memory footprint
* Uses PHP 8.3 for better performance, lower cpu usage & memory footprint
* Multi-arch support: 386, amd64, arm/v6, arm/v7, arm64, ppc64le, s390x
* Optimized for 100 concurrent users
* Optimized to only use resources when there's traffic (by using PHP-FPM's ondemand PM)
Expand Down
8 changes: 4 additions & 4 deletions rootfs/bin/docker-entrypoint.sh
Original file line number Diff line number Diff line change
Expand Up @@ -29,12 +29,12 @@ mv "$tmpfile" /etc/nginx/nginx.conf

# Replace ENV vars in php configuration files
tmpfile=$(mktemp)
cat /etc/php82/conf.d/custom.ini | envsubst "$(env | cut -d= -f1 | sed -e 's/^/$/')" | tee "$tmpfile" > /dev/null
mv "$tmpfile" /etc/php82/conf.d/custom.ini
cat /etc/php83/conf.d/custom.ini | envsubst "$(env | cut -d= -f1 | sed -e 's/^/$/')" | tee "$tmpfile" > /dev/null
mv "$tmpfile" /etc/php83/conf.d/custom.ini

tmpfile=$(mktemp)
cat /etc/php82/php-fpm.d/www.conf | envsubst "$(env | cut -d= -f1 | sed -e 's/^/$/')" | tee "$tmpfile" > /dev/null
mv "$tmpfile" /etc/php82/php-fpm.d/www.conf
cat /etc/php83/php-fpm.d/www.conf | envsubst "$(env | cut -d= -f1 | sed -e 's/^/$/')" | tee "$tmpfile" > /dev/null
mv "$tmpfile" /etc/php83/php-fpm.d/www.conf

echo "Starting startup scripts in /docker-entrypoint-init.d ..."
for script in $(find /docker-entrypoint-init.d/ -executable -type f | sort); do
Expand Down
File renamed without changes.
2 changes: 1 addition & 1 deletion rootfs/etc/service/php/run
Original file line number Diff line number Diff line change
Expand Up @@ -2,4 +2,4 @@

# pipe stderr to stdout and run php-fpm
exec 2>&1
exec php-fpm82 -F
exec php-fpm83 -F
2 changes: 1 addition & 1 deletion run_tests.sh
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
#!/usr/bin/env sh
apk --no-cache add curl
curl --silent --fail http://app:8080 | grep 'PHP 8.2'
curl --silent --fail http://app:8080 | grep 'PHP 8.3'