# PHP 5.6 == 3.6 ARG OS_VERSION=3.6 FROM quay.io/sindigilive/alpine:${OS_VERSION} AS builder LABEL maintainer=" map@sindigilive.com" ARG FLAVOR=cli ARG WITH_APACHE=false ARG WITH_DATABASE=false ARG PHP_VERSION=5.6 ARG PHP_VER_SHORT=5 ARG COMPOSER_VERSION=2.2.25 ARG COMPOSER_VER_SHORT=2.2 ENV FLAVOR=${FLAVOR} ENV WITH_APACHE=${WITH_APACHE} ENV WITH_DATABASE=${WITH_DATABASE} ENV PHP_VERSION=${PHP_VERSION} ENV PHP_VER_SHORT=${PHP_VER_SHORT} ENV COMPOSER_VERSION=${COMPOSER_VERSION} ENV COMPOSER_VER_SHORT=${COMPOSER_VER_SHORT} # Set composer home ENV COMPOSER_HOME=/app ENV COMPOSER_CACHE_DIR=${COMPOSER_HOME}/cache WORKDIR /tmp ADD 5/scripts/alpine-setup.sh ./setup.sh # Download and install composer 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 ${COMPOSER_HOME}/build ${COMPOSER_CACHE_DIR}/files \ ${COMPOSER_CACHE_DIR}/repo ${COMPOSER_CACHE_DIR}/vcs ; \ /app ; \ /usr/sbin/addgroup -g 10001 php ; \ /usr/sbin/adduser -D -u 10001 -G php -s /sbin/nologin -h ${COMPOSER_HOME}/build php ; \ /bin/mkdir -p /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 ; \ /bin/chmod +x /tmp/setup.sh /usr/local/bin/composer ; \ /bin/sh /tmp/setup.sh; \ /bin/rm -f /tmp/*.sh; # 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/* FROM scratch ARG PHP_VERSION=5.6 ARG PHP_VER_SHORT=5 ENV PHP_VERSION=${PHP_VERSION} ENV PHP_VER_SHORT=${PHP_VER_SHORT} LABEL maintainer="Muhamad Aditya Prima " LABEL name="php" LABEL version="${PHP_VERSION}" LABEL distribution-scope="public" #labels for container catalog LABEL summary="PHP ${PHP_VERSION} on alpine based container image" LABEL description="Provide php on alpine based container base image" LABEL io.k8s.description="Very small alpine linux container image" LABEL io.k8s.display-name="PHP ${PHP_VERSION}" COPY --from=builder / / WORKDIR /app STOPSIGNAL SIGQUIT CMD ["/usr/bin/php", "-v"]