This repository has been archived on 2024-12-31. You can view files and clone it, but cannot push or open issues or pull requests.
composer/Dockerfile.ubi9

48 lines
1.4 KiB
Docker

ARG REGISTRY_URL=docker.io/aprimediet
ARG PHP_VERSION=8.4
FROM ${REGISTRY_URL}/php:${PHP_VERSION}-ubi9
LABEL maintainer="<Muhamad Aditya Prima> aprimediet@gmail.com"
ARG COMPOSER_VERSION=2.8.4
USER root
WORKDIR /tmp
# Set composer home
ENV COMPOSER_HOME=/usr/local/share/composer
ENV COMPOSER_CACHE_DIR=${COMPOSER_HOME}/cache
# Setup composer user and required directories
RUN groupadd -g 10001 composer && \
useradd -u 10001 -g 10001 -m -d /build -s /sbin/nologin composer && \
mkdir -p ${COMPOSER_CACHE_DIR}/files && \
mkdir -p ${COMPOSER_CACHE_DIR}/repo && \
mkdir -p ${COMPOSER_CACHE_DIR}/vcs && \
chown -R composer:composer ${COMPOSER_CACHE_DIR}
# Add all php extensions
RUN dnf -y update && dnf -y install \
php-bcmath php-brotli php-dba php-dbg php-devel \
php-embedded php-enchant php-ffi php-geos php-gmp \
php-intl php-json php-ldap php-lz4 \
php-maxminddb php-mysqlnd php-odbc \
php-opcache php-pdo php-pdo-dblib php-pdo-firebird \
php-pear php-pgsql php-phpiredis php-process \
php-snmp php-soap php-sodium \
php-tidy php-xz php-zstd
# Download and install composer
ADD https://getcomposer.org/installer ./composer-setup.php
RUN php composer-setup.php --version=${COMPOSER_VERSION} && \
mv composer.phar /usr/local/bin/composer && \
rm -f ./composer-setup.php && \
dnf -y autoremove && \
dnf -y clean all
USER composer
WORKDIR /build
CMD ["/usr/local/bin/composer"]