ARG REGISTRY_URL=docker.io/aprimediet ARG PHP_VERSION=8.4 FROM ${REGISTRY_URL}/php:${PHP_VERSION}-ubi9 LABEL maintainer=" 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"]