FROM ubuntu:24.04 ARG PACKAGE ARG TARGETARCH LABEL description="piler ubuntu noble image" \ maintainer="Janos SUTO, sj@acts.hu" \ package="${PACKAGE}" ENV DEBIAN_FRONTEND="noninteractive" \ DISTRO="noble" \ PILER_USER="piler" \ MYSQL_DATABASE="piler" COPY ${PACKAGE}_${TARGETARCH}.deb / # hadolint ignore=DL3008 RUN apt-get update && \ apt-get -y --no-install-recommends install \ wget openssl sysstat php8.3-cli php8.3-cgi php8.3-mysql php8.3-fpm php8.3-zip php8.3-ldap \ php8.3-gd php8.3-curl php8.3-xml php8.3-memcached catdoc unrtf poppler-utils nginx tnef sudo libzip4t64 \ libtre5 cron libmariadb-dev mariadb-client-core python3 python3-mysqldb ca-certificates curl rsyslog gnupg && \ wget https://repo.manticoresearch.com/manticore-repo.noarch.deb && \ dpkg -i manticore-repo.noarch.deb && \ rm -f manticore-repo.noarch.deb && \ apt-get update && \ apt-get install -y --no-install-recommends manticore manticore-columnar-lib && \ apt-get clean && \ rm -rf /var/lib/apt/lists/* && \ sed -i '/session required pam_loginuid.so/c\#session required pam_loginuid.so' /etc/pam.d/cron && \ dpkg -i ${PACKAGE}_${TARGETARCH}.deb && \ touch /etc/piler/MANTICORE && \ ln -sf /etc/piler/piler-nginx.conf /etc/nginx/sites-enabled && \ echo "www-data ALL=NOPASSWD: /etc/init.d/rc.piler reload" > /etc/sudoers.d/piler && \ rm -f ${PACKAGE}_${TARGETARCH}.deb /etc/nginx/sites-enabled/default /etc/piler/piler.key /etc/piler/piler.pem /etc/piler/config-site.php && \ crontab -u $PILER_USER /usr/share/piler/piler.cron VOLUME ["/etc/piler","/var/piler/store","/var/piler/manticore","/var/piler/imap","/var/piler/stat","/var/spool/cron/crontabs"] EXPOSE 25/tcp EXPOSE 80/tcp EXPOSE 443/tcp # Clean up APT when done. RUN apt clean && \ apt autoremove && \ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* \ sed -i '/imklog/s/^/#/' /etc/rsyslog.conf COPY start.sh /start.sh # chmod start.sh RUN chmod a+x /start.sh CMD ["/start.sh"]