FROM debian:bookworm-slim LABEL author="RefoselTeam" maintainer="admin@refoseltw.ru" LABEL org.opencontainers.image.source="https://gitea.refoseltw.ru/RefoselTeamWork/yolks" LABEL org.opencontainers.image.licenses=MIT ENV DEBIAN_FRONTEND=noninteractive # Install dependencies RUN apt update \ && apt upgrade -y \ && apt install -y \ curl \ gnupg \ ca-certificates \ tini \ tzdata \ unzip \ git \ && apt clean \ && rm -rf /var/lib/apt/lists/* # Create directories RUN mkdir -p /home/container/stalwart-mail/bin \ && mkdir -p /home/container/stalwart-mail/data \ && mkdir -p /home/container/stalwart-mail/certs \ && mkdir -p /home/container/stalwart-mail/logs # Install Stalwart Mail Server ARG STALWART_VERSION=0.16.8 RUN cd /tmp \ && curl -sSL -o stalwart.tar.gz "https://github.com/stalwartlabs/mail-server/releases/download/v${STALWART_VERSION}/stalwart-x86_64-unknown-linux-gnu.tar.gz" \ && tar xzf stalwart.tar.gz \ && mv stalwart-* /home/container/stalwart-mail/bin/stalwart-mail \ && chmod +x /home/container/stalwart-mail/bin/stalwart-mail \ && rm -rf /tmp/* # Setup user RUN useradd -m -d /home/container -s /bin/bash container \ && chown -R container:container /home/container USER container ENV USER=container HOME=/home/container WORKDIR /home/container EXPOSE 8080 465 587 993 995 4190 STOPSIGNAL SIGINT COPY --chown=container:container ./entrypoint.sh /entrypoint.sh COPY --chown=container:container ./config.toml /entrypoint-config.toml RUN chmod +x /entrypoint.sh ENTRYPOINT ["/usr/bin/tini", "-g", "--"] CMD ["/entrypoint.sh"]