FROM debian ARG HOSTNAME ARG VIRTUAL_DOMAINS ENV DEBIAN_FRONTEND=noninteractive # Create system users with fixed, well-known UID/GIDs RUN useradd \ --uid 2000 \ --shell /usr/sbin/nologin \ --home-dir /var/mail/vhost \ --skel /dev/null --create-home \ vmailbox RUN useradd \ --uid 2001 \ --shell /usr/sbin/nologin \ --home-dir /var/spool/postfix \ postfix RUN useradd \ --uid 2002 \ --shell /usr/sbin/nologin \ --home-dir /var/spool/mlmmj \ --skel /dev/null --create-home \ mlmmj # Install packages RUN apt update \ && apt full-upgrade --yes \ && apt install --yes \ dovecot-core \ dovecot-imapd \ mlmmj \ postfix \ postfix-pcre \ sudo \ && apt clean # Install files COPY dovecot /etc/dovecot/ COPY postfix /etc/postfix/ COPY userconfig /etc/userconfig/ RUN find /etc/dovecot /etc/postfix -type f | xargs sed -i \ "s/ENV_HOSTNAME/${HOSTNAME}/g; s/ENV_VIRTUAL_DOMAINS/${VIRTUAL_DOMAINS}/g" EXPOSE 25 EXPOSE 80 EXPOSE 465 EXPOSE 993 # CMD set by docker-compose.yml