FROM ubuntu:24.04 LABEL description="noble builder image" LABEL maintainer="Janos SUTO, sj@acts.hu" ENV DEBIAN_FRONTEND="noninteractive" ARG TARGETARCH SHELL ["/bin/bash", "-c", "-o", "pipefail"] # hadolint ignore=DL3001,DL3008,DL3028 RUN apt-get update && \ apt-get install --no-install-recommends -y gnupg git jq curl unzip openssl openssh-client make gcc sysstat \ catdoc unrtf poppler-utils tnef libssl-dev libtre-dev libzip-dev libmariadb-dev libcurl4-openssl-dev libsodium-dev ruby ruby-dev mariadb-server phpunit \ php8.3-cli php8.3-mysql php8.3-zip php8.3-ldap php8.3-curl php8.3-xml php8.3-memcached php8.3-mbstring && \ apt-get clean && rm -rf /var/lib/apt/lists/* && \ groupadd piler && useradd -g piler -s /bin/bash -d /var/piler piler && usermod -L piler && \ mkdir -p /var/piler && \ service mariadb start && \ echo "create database piler1 character set utf8mb4" | mysql && \ echo "grant all privileges on piler1.* to piler@localhost identified by 'piler123'" | mysql && \ gem install fpm && \ curl -L -o /tmp/composer.phar https://getcomposer.org/composer-stable.phar # When I run curl -L -o /usr/local/bin/mc https://dl.min.io/client/mc/release/linux-${TARGETARCH}/mc # during the image build on arm64, I always got the following error: # curl: (56) Failure when receiving data from the peer # # So the workaround is to download the binaries before # the build, chmod +x them, and copy them to the image COPY mc-${TARGETARCH} /usr/local/bin/mc COPY run.sh /run.sh COPY piler.conf /etc/piler/piler.conf CMD ["/run.sh"]