123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- FROM alpine:3.19
- LABEL maintainer "The Infrastructure Company GmbH GmbH <info@servercow.de>"
- # renovate: datasource=github-releases depName=tianon/gosu versioning=semver-coerced extractVersion=^(?<version>.*)$
- ARG GOSU_VERSION=1.16
- ENV LC_ALL C
- # Add groups and users before installing Dovecot to not break compatibility
- RUN addgroup -g 5000 vmail \
- && addgroup -g 401 dovecot \
- && addgroup -g 402 dovenull \
- && sed -i "s/999/99/" /etc/group \
- && addgroup -g 999 sogo \
- && addgroup nobody sogo \
- && adduser -D -u 5000 -G vmail -h /var/vmail vmail \
- && adduser -D -G dovecot -u 401 -h /dev/null -s /sbin/nologin dovecot \
- && adduser -D -G dovenull -u 402 -h /dev/null -s /sbin/nologin dovenull \
- && apk add --no-cache --update \
- bash \
- bind-tools \
- findutils \
- envsubst \
- ca-certificates \
- curl \
- jq \
- lua \
- lua-cjson \
- lua-socket \
- lua-sql-mysql \
- lua5.3-sql-mysql \
- icu-data-full \
- mariadb-connector-c \
- lua-sec \
- mariadb-dev \
- glib-dev \
- gcompat \
- mariadb-client \
- perl \
- perl-dev \
- perl-ntlm \
- perl-cgi \
- perl-crypt-openssl-rsa \
- perl-utils \
- perl-crypt-ssleay \
- perl-data-uniqid \
- perl-dbd-mysql \
- perl-dbi \
- perl-digest-hmac \
- perl-dist-checkconflicts \
- perl-encode-imaputf7 \
- perl-file-copy-recursive \
- perl-file-tail \
- perl-io-socket-inet6 \
- perl-io-gzip \
- perl-io-socket-ssl \
- perl-io-tee \
- perl-ipc-run \
- perl-json-webtoken \
- perl-mail-imapclient \
- perl-module-implementation \
- perl-module-scandeps \
- perl-net-ssleay \
- perl-package-stash \
- perl-package-stash-xs \
- perl-par-packer \
- perl-parse-recdescent \
- perl-lockfile-simple --repository=http://dl-cdn.alpinelinux.org/alpine/edge/community/ \
- libproc \
- perl-readonly \
- perl-regexp-common \
- perl-sys-meminfo \
- perl-term-readkey \
- perl-test-deep \
- perl-test-fatal \
- perl-test-mockobject \
- perl-test-mock-guard \
- perl-test-pod \
- perl-test-requires \
- perl-test-simple \
- perl-test-warn \
- perl-try-tiny \
- perl-unicode-string \
- perl-proc-processtable \
- perl-app-cpanminus \
- procps \
- python3 \
- py3-mysqlclient \
- py3-html2text \
- py3-jinja2 \
- py3-redis \
- redis \
- syslog-ng \
- syslog-ng-redis \
- syslog-ng-json \
- supervisor \
- tzdata \
- wget \
- dovecot \
- dovecot-dev \
- dovecot-lmtpd \
- dovecot-lua \
- dovecot-ldap \
- dovecot-mysql \
- dovecot-sql \
- dovecot-submissiond \
- dovecot-pigeonhole-plugin \
- dovecot-pop3d \
- dovecot-fts-solr \
- && arch=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) \
- && wget -O /usr/local/bin/gosu "https://github.com/tianon/gosu/releases/download/$GOSU_VERSION/gosu-$arch" \
- && chmod +x /usr/local/bin/gosu \
- && gosu nobody true
- #RUN cpan LockFile::Simple
- COPY trim_logs.sh /usr/local/bin/trim_logs.sh
- COPY clean_q_aged.sh /usr/local/bin/clean_q_aged.sh
- COPY syslog-ng.conf /etc/syslog-ng/syslog-ng.conf
- COPY syslog-ng-redis_slave.conf /etc/syslog-ng/syslog-ng-redis_slave.conf
- COPY imapsync /usr/local/bin/imapsync
- COPY imapsync_runner.pl /usr/local/bin/imapsync_runner.pl
- COPY report-spam.sieve /usr/lib/dovecot/sieve/report-spam.sieve
- COPY report-ham.sieve /usr/lib/dovecot/sieve/report-ham.sieve
- COPY rspamd-pipe-ham /usr/lib/dovecot/sieve/rspamd-pipe-ham
- COPY rspamd-pipe-spam /usr/lib/dovecot/sieve/rspamd-pipe-spam
- COPY sa-rules.sh /usr/local/bin/sa-rules.sh
- COPY maildir_gc.sh /usr/local/bin/maildir_gc.sh
- COPY docker-entrypoint.sh /
- COPY supervisord.conf /etc/supervisor/supervisord.conf
- COPY stop-supervisor.sh /usr/local/sbin/stop-supervisor.sh
- COPY quarantine_notify.py /usr/local/bin/quarantine_notify.py
- COPY quota_notify.py /usr/local/bin/quota_notify.py
- COPY repl_health.sh /usr/local/bin/repl_health.sh
- ENTRYPOINT ["/docker-entrypoint.sh"]
- CMD exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|