php/8/Dockerfile.alpine-builder

40 lines
1.3 KiB
Docker

# PHP 8.0 == 3.16
# PHP 8.1 == 3.19
# PHP 8.2 == 3.21
# PHP 8.3 == 3.21
ARG OS_VERSION=3.21
FROM quay.io/sindigilive/alpine:${OS_VERSION}
LABEL maintainer="<Muhamad Aditya Prima> map@sindigilive.com"
ARG PHP_VERSION=8.3
ARG PHP_VER_SHORT=83
ARG COMPOSER_VERSION=2.8.4
ENV PHP_VERSION=${PHP_VERSION}
ENV PHP_VER_SHORT=${PHP_VER_SHORT}
ENV COMPOSER_VERSION=${COMPOSER_VERSION}
ENV SERVER_ROOT=/app
WORKDIR ${SERVER_ROOT}
ADD 8/scripts/alpine-setup.sh /tmp/setup.sh
ADD https://github.com/composer/composer/releases/download/${COMPOSER_VERSION}/composer.phar /usr/local/bin/composer
# Create directory, and install required php app
RUN /bin/mkdir -p /app ; \
/usr/sbin/addgroup -g 10000 php ; \
/usr/sbin/adduser -D -u 10000 -G php -s /bin/sh -h $SERVER_ROOT php ; \
/bin/chown -R php:php /app ; \
/sbin/apk add --update --no-cache \
php${PHP_VER_SHORT} php${PHP_VER_SHORT}-common \
php${PHP_VER_SHORT}-cli php${PHP_VER_SHORT}-phar \
php${PHP_VER_SHORT}-iconv php${PHP_VER_SHORT}-mbstring \
php${PHP_VER_SHORT}-json ; \
/bin/chmod +rx /tmp/setup.sh /usr/local/bin/composer ;
# Create symlinks to /usr/bin/php in case it doesn't exists
RUN ln -ns /usr/bin/php${PHP_VER_SHORT} /usr/bin/php ; exit 0
# CLEAN APK CACHES
RUN rm -vrf /var/cache/apk/*