You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
dovecot/Dockerfile

52 lines
2.7 KiB
Docker

FROM registry.fk.jochum.dev/docker_hub_cache/library/debian:bullseye-slim
LABEL maintainer "René Jochum <rene@jochum.dev>"
ENV DEBIAN_FRONTEND noninteractive
# Configure Proxy
RUN set -ex; \
apt-get update --allow-releaseinfo-change && \
apt-get install -qy netcat-openbsd && \
if [ -z "$APT_CACHER" ]; then APT_CACHER="apt-cacher.apt-cacher.svc.cluster.local"; fi && \
if nc -w1 -z $APT_CACHER 3142 1>/dev/null 2>&1; then \
echo 'Acquire::HTTP::Proxy "http://'$APT_CACHER':3142";' >> /etc/apt/apt.conf.d/01proxy && \
echo 'Acquire::HTTPS::Proxy "false";' >> /etc/apt/apt.conf.d/01proxy; else exit 0; fi
RUN set -ex; \
apt-get dist-upgrade -y -o 'DPkg::Options::=--force-confold' -o 'DPkg::Options::=--force-confdef' && \
apt-get install --no-install-recommends -y -o 'DPkg::Options::=--force-confold' -o 'DPkg::Options::=--force-confdef' gnupg apt-transport-https curl ca-certificates && \
curl https://repo.dovecot.org/DOVECOT-REPO-GPG | gpg --import && \
gpg --export ED409DA1 > /etc/apt/trusted.gpg.d/dovecot.gpg && \
echo "deb https://repo.dovecot.org/ce-2.3-latest/debian/bullseye bullseye main" > /etc/apt/sources.list.d/dovecot.list && \
apt-get update --allow-releaseinfo-change && \
apt-get install --no-install-recommends -y -o 'DPkg::Options::=--force-confold' -o 'DPkg::Options::=--force-confdef' dovecot-imapd dovecot-pop3d dovecot-lmtpd dovecot-managesieved dovecot-sieve dovecot-pgsql dovecot-mysql python3-minimal python3-jinja2
# Install rspamc to submit SPAM/HAM to rspamd
RUN set -ex; \
apt-get install --no-install-recommends -y -o 'DPkg::Options::=--force-confold' -o 'DPkg::Options::=--force-confdef' lsb-release wget ca-certificates gpg && \
mkdir -p /etc/apt/keyrings && \
wget -O- https://rspamd.com/apt-stable/gpg.key | gpg --dearmor > /etc/apt/keyrings/rspamd.gpg && \
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/rspamd.gpg] http://rspamd.com/apt-stable/ `lsb_release -c -s` main" > /etc/apt/sources.list.d/rspamd.list && \
echo "deb-src [arch=amd64 signed-by=/etc/apt/keyrings/rspamd.gpg] http://rspamd.com/apt-stable/ `lsb_release -c -s` main" >> /etc/apt/sources.list.d/rspamd.list && \
apt-get update --allow-releaseinfo-change && \
apt-get --no-install-recommends -y -o 'DPkg::Options::=--force-confold' -o 'DPkg::Options::=--force-confdef' install rspamd && \
rm -rf /var/lib/apt/lists/*
# Remove proxy for future runs and lists for space
RUN set -ex; \
rm -f /etc/apt/apt.conf.d/01proxy && \
rm -rf /var/lib/apt/lists/*
COPY conf /conf
COPY sieve /sieve
COPY docker-entrypoint.py /
EXPOSE 110/tcp 143/tcp 995/tcp 993/tcp 2525/tcp 4190/tcp 12345/tcp
VOLUME ["/data", "/overrides", "/cert"]
ENTRYPOINT ["/docker-entrypoint.py"]
CMD ["/usr/sbin/dovecot", "-F"]