2019-09-09 18:02:55 -03:00

76 lines
2.4 KiB
Docker

FROM golang:1.9-alpine as confd
LABEL maintainer "Mauro Torrez <mauro@mau.ro>"
# confd -----------------------------------------------------------------------
ARG CONFD_VERSION=0.16.0
ADD https://github.com/kelseyhightower/confd/archive/v${CONFD_VERSION}.tar.gz /tmp/
RUN apk add --no-cache bzip2 make && \
mkdir -p /go/src/github.com/kelseyhightower/confd && \
cd /go/src/github.com/kelseyhightower/confd && \
tar --strip-components=1 -zxf /tmp/v${CONFD_VERSION}.tar.gz && \
go install github.com/kelseyhightower/confd && \
rm -rf /tmp/v${CONFD_VERSION}.tar.gz
# end confd -------------------------------------------------------------------
FROM debian:buster-slim
ARG DEBIAN_FRONTEND=noninteractive
ENV LC_ALL C
ENV SUBMISSION_ENABLE= \
SUBMISSION_RELAY_HOST= \
SUBMISSION_RELAY_PORT=25 \
SUBMISSION_RELAY_TRUSTED=yes \
SUBMISSION_RELAY_USER= \
SUBMISSION_RELAY_MASTER_USER= \
SUBMISSION_RELAY_PASSWORD= \
SUBMISSION_RELAY_SSL=starttls \
SUBMISSION_RELAY_SSL_VERIFY=no \
SUBMISSION_RELAY_RAWLOG_DIR=
RUN apt-get update && apt-get install -y --no-install-recommends \
dovecot-lmtpd \
dovecot-imapd \
dovecot-ldap \
dovecot-sieve \
dovecot-managesieved \
dovecot-antispam \
dovecot-submission \
bogofilter \
ssl-cert \
&& rm -rf /var/lib/apt/lists/* \
&& groupadd -g 5000 vmail && useradd -g vmail -u 5000 vmail -d /vmail \
&& mkdir -p /vmail && chown vmail:vmail /vmail \
&& mkdir -p /ssl && chmod 700 /ssl \
&& cp /etc/ssl/certs/ssl-cert-snakeoil.pem /ssl/cert.pem \
&& cp /etc/ssl/private/ssl-cert-snakeoil.key /ssl/key.pem \
&& mkdir -p /etc/dovecot/local.d /etc/dovecot/sieve/{before,after} \
&& mkdir -p /etc/confd/{conf.d,templates}
ADD 10-mail.conf \
10-master.conf \
10-ssl.conf \
11-quota.conf \
15-mailboxes.conf \
20-imap.conf \
90-antispam.conf \
90-sieve.conf \
auth-ldap.conf.ext \
auth-master.conf.ext \
/etc/dovecot/conf.d/
ADD local.conf /etc/dovecot/
ADD submission.conf.tmpl \
/etc/confd/templates/
ADD confd.toml /etc/confd/conf.d/
ADD junk-filter.sieve /etc/dovecot/sieve/before/
RUN sievec /etc/dovecot/sieve/before && sievec /etc/dovecot/sieve/after
VOLUME /etc/dovecot /ssl /vmail
EXPOSE 110/tcp 143/tcp 587/tcp 993/tcp 995/tcp 2000/tcp
COPY --from=confd /go/bin/confd /usr/local/bin/confd
ADD entrypoint.sh /
ENTRYPOINT /entrypoint.sh
CMD dovecot -F