90 lines
3.0 KiB
Docker
90 lines
3.0 KiB
Docker
ARG OS_VERSION=8.10
|
|
|
|
FROM quay.io/sindigilive/almalinux:${OS_VERSION} AS builder
|
|
|
|
ARG FLAVOR=cli
|
|
ARG WITH_APACHE=false
|
|
ARG PHP_VERSION=5.6
|
|
ARG PHP_VER_SHORT=56
|
|
|
|
ENV FLAVOR=${FLAVOR}
|
|
ENV WITH_APACHE=${WITH_APACHE}
|
|
ENV PHP_VERSION=${PHP_VERSION}
|
|
ENV PHP_VER_SHORT=${PHP_VER_SHORT}
|
|
|
|
ENV ROOTFS=/mnt/rootfs
|
|
|
|
WORKDIR /tmp
|
|
|
|
RUN mkdir -p ${ROOTFS}; \
|
|
dnf -y update; \
|
|
dnf install --installroot ${ROOTFS} \
|
|
http://rpms.remirepo.net/enterprise/remi-release-8.rpm \
|
|
--releasever 8 --setopt install_weak_deps=false --nodocs --nogpgcheck -y; \
|
|
dnf module reset php; \
|
|
dnf install --installroot ${ROOTFS} \
|
|
coreutils-single \
|
|
glibc-minimal-langpack \
|
|
php${PHP_VER_SHORT}-php-cli \
|
|
php${PHP_VER_SHORT}-php-common \
|
|
--releasever 8 --setopt install_weak_deps=false --nodocs --nogpgcheck -y; \
|
|
dnf --installroot ${ROOTFS} clean all;
|
|
|
|
FROM quay.io/sindigilive/almalinux:${OS_VERSION}-micro AS stage2
|
|
|
|
ARG PHP_VER_SHORT=56
|
|
|
|
RUN mkdir -p /app;
|
|
|
|
ENV ROOTFS=/mnt/rootfs
|
|
|
|
ENV SRC=${ROOTFS}/usr/lib64
|
|
|
|
COPY --from=builder \
|
|
${SRC}/libcrypt.so.1 ${SRC}/libedit.so.0 ${SRC}/libstdc++.so.6 \
|
|
${SRC}/libz.so.1 ${SRC}/libpcre.so.1 ${SRC}/libxml2.so.2 \
|
|
${SRC}/liblzma.so.5 ${SRC}/libgssapi_krb5.so.2 ${SRC}/libkrb5.so.3 \
|
|
${SRC}/libk5crypto.so.3 ${SRC}/libcom_err.so.2 ${SRC}/libssl.so.1.1 \
|
|
${SRC}/libcrypto.so.1.1 ${SRC}/libkrb5support.so.0 ${SRC}/libkeyutils.so.1 \
|
|
${SRC}/libbz2.so.1 ${SRC}/libcurl.so.4 ${SRC}/libbz2.so.1 \
|
|
${SRC}/libnghttp2.so.14 ${SRC}/libzstd.so.1 ${SRC}/libidn2.so.0 \
|
|
${SRC}/libssh.so.4 ${SRC}/libpsl.so.5 ${SRC}/libldap-2.4.so.2 \
|
|
${SRC}/liblber-2.4.so.2 ${SRC}/libbrotlidec.so.1 ${SRC}/libunistring.so.2 \
|
|
${SRC}/libsasl2.so.3 ${SRC}/libbrotlicommon.so.1 \
|
|
/usr/lib64
|
|
|
|
COPY --from=builder ${ROOTFS}/usr/share/Modules/modulefiles/php56 /usr/share/Modules/modulefiles/php56
|
|
COPY --from=builder ${ROOTFS}/opt/remi /opt/remi
|
|
COPY --from=builder ${ROOTFS}/var/opt/remi /var/opt/remi
|
|
COPY --from=builder ${ROOTFS}/etc/opt/remi /etc/opt/remi
|
|
COPY --from=builder ${ROOTFS}/etc/scl/prefixes/php56 /etc/scl/prefixes/php56
|
|
|
|
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 <map@sindigilive.com>"
|
|
LABEL name="php"
|
|
LABEL version="${PHP_VERSION}"
|
|
LABEL distribution-scope="public"
|
|
|
|
#labels for container catalog
|
|
LABEL summary="PHP ${PHP_VERSION} on almalinux-micro based container image"
|
|
LABEL description="Provide php on almalinux-micro based container base image"
|
|
LABEL io.k8s.description="Small almalinux micro container image"
|
|
LABEL io.k8s.display-name="PHP ${PHP_VERSION}"
|
|
|
|
COPY --from=stage2 / /
|
|
|
|
RUN ln -s /opt/remi/php${PHP_VER_SHORT}/root/usr/bin/php /usr/bin/php ; \
|
|
ln -s /opt/remi/php${PHP_VER_SHORT}/root/usr/bin/php-cgi /usr/bin/php-cgi ; \
|
|
ln -s /opt/remi/php${PHP_VER_SHORT}/root/usr/bin/php-phar /usr/bin/php-phar ; \
|
|
ln -s /opt/remi/php${PHP_VER_SHORT}/root/usr/bin/phpize /usr/bin/phpize ;
|
|
|
|
STOPSIGNAL SIGQUIT
|
|
|
|
CMD ["/usr/bin/php", "-v"] |