Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F1975014
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
6 KB
Referenced Files
None
Subscribers
None
View Options
diff --git a/docker/imap/Dockerfile b/docker/imap/Dockerfile
index 6ebfed80..ea9aa94a 100644
--- a/docker/imap/Dockerfile
+++ b/docker/imap/Dockerfile
@@ -1,106 +1,106 @@
FROM almalinux:8
LABEL maintainer="contact@apheleia-it.ch"
LABEL dist=centos8
LABEL tier=${TIER}
ENV DISTRO=centos8
# ENV LANG=en_US.utf8
# ENV LC_ALL=en_US.utf8
# Add EPEL.
RUN dnf -y install dnf-plugin-config-manager && \
dnf config-manager --set-enabled powertools && \
dnf -y install epel-release && \
dnf -y module enable 389-ds:1.4/default && \
dnf -y module enable mariadb:10.3 && \
dnf -y install iputils vim-enhanced bind-utils && \
dnf clean all
RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-8
# Install kolab
RUN rpm --import https://mirror.apheleia-it.ch/repos/Kolab:/16/key.asc && \
rpm -Uvh https://mirror.apheleia-it.ch/repos/Kolab:/16/kolab-16-for-el8.rpm
RUN sed -i -e '/^ssl/d' /etc/yum.repos.d/kolab*.repo && \
dnf config-manager --enable kolab-16-testing &&\
dnf -y --setopt tsflags= install patch &&\
dnf clean all
RUN sed -i -r -e 's/^SELINUX=.*$/SELINUX=permissive/g' /etc/selinux/config 2>/dev/null || :
WORKDIR /root/
RUN dnf -y install git
RUN dnf -y group install "Development Tools"
-RUN git clone https://github.com/cmollekopf/cyrus-imapd
RUN dnf -y install autoconf automake bison cyrus-sasl-devel flex gcc gperf jansson-devel libbsd-devel libtool libicu-devel libuuid-devel openssl-devel pkgconfig sqlite-devel brotli-devel libical-devel libxml2-devel libnghttp2-devel shapelib zlib-devel pcre-devel
RUN dnf -y install perl-devel
RUN dnf -y install cyrus-imapd cyrus-sasl cyrus-sasl-plain
# wslay-devel
#libchardet-devel
# cld2-devel
#
-RUN cd cyrus-imapd && \
- git checkout dev/kolab-3.6 && \
+RUN git clone https://github.com/cmollekopf/cyrus-imapd && \
+ cd cyrus-imapd && \
+ git checkout dev/mollekopf && \
autoreconf -i && \
./configure CFLAGS="-W -Wno-unused-parameter -g -O0 -Wall -Wextra -Werror -fPIC" --enable-murder --enable-http --enable-calalarmd --enable-autocreate --enable-idled --with-openssl=yes --enable-replication --prefix=/usr && \
make -j6 && \
make install
RUN dnf -y install procps-ng iputils bind-utils sudo rsyslog
COPY cyrus.conf /etc/cyrus.conf
COPY imapd.conf /etc/imapd.conf
COPY imapd.annotations.conf /etc/imapd.annotations.conf
COPY saslauthd.conf /etc/saslauthd.conf
COPY rsyslog.conf /etc/rsyslog.conf
ARG IMAP_ADMIN_LOGIN
ARG IMAP_ADMIN_PASSWORD
RUN sed -i -r \
-e "s|IMAP_ADMIN_LOGIN|$IMAP_ADMIN_LOGIN|g" \
-e "s|IMAP_ADMIN_PASSWORD|$IMAP_ADMIN_PASSWORD|g" \
/etc/imapd.conf
ARG APP_DOMAIN
RUN sed -i -r \
-e "s|APP_DOMAIN|$APP_DOMAIN|g" \
/etc/saslauthd.conf
ADD kolab.hosted.com.cert /etc/pki/tls/certs/kolab.hosted.com.cert
ADD kolab.hosted.com.chain.pem /etc/pki/tls/certs/kolab.hosted.com.chain.pem
ADD kolab.hosted.com.key /etc/pki/tls/certs/kolab.hosted.com.key
ADD init.sh /init.sh
RUN mkdir -p /etc/pki/cyrus-imapd/ && cat /etc/pki/tls/certs/kolab.hosted.com.cert /etc/pki/tls/certs/kolab.hosted.com.chain.pem /etc/pki/tls/certs/kolab.hosted.com.key > /etc/pki/cyrus-imapd/cyrus-imapd.bundle.pem && \
chown cyrus:mail /etc/pki/cyrus-imapd/cyrus-imapd.bundle.pem
# RUN chgrp -R 0 /opt/app-root/src && \
# chmod -R g=u /opt/app-root/src
RUN mkdir -p /run/saslauthd && \
chmod 777 /run/saslauthd && \
chmod -R 777 /run && \
mkdir -p /var/run && \
chmod -R 777 /var/run && \
chmod 777 /var/lib/imap && \
chmod 777 /var/spool/imap
RUN touch /dev/log && chmod 777 /dev/log
RUN chown -R 1001:0 /etc /var/lib/imap /var/spool/imap /var/run /run
RUN echo 'default ALL=NOPASSWD: ALL' >> /etc/sudoers && \
chown root:root /etc/sudoers /etc/sudo.conf /etc/sudoers.d
RUN id default || (groupadd -g 1001 default && useradd -d /opt/app-root/ -u 1001 -g 1001 default)
USER 1001
CMD ["/init.sh"]
EXPOSE 143/tcp 993/tcp 80/tcp 443/tcp
diff --git a/docker/imap/cyrus.conf b/docker/imap/cyrus.conf
index 955667d2..6fd731e4 100644
--- a/docker/imap/cyrus.conf
+++ b/docker/imap/cyrus.conf
@@ -1,42 +1,42 @@
START {
# do not delete this entry!
recover cmd="ctl_cyrusdb -r"
#mupdatepush cmd="ctl_mboxlist -m"
}
SERVICES {
- http cmd="httpd" listen="http" proto="tcp" prefork=5
- imap cmd="imapd" listen="imap" proto="tcp" prefork=5
- https cmd="httpd -s" listen="https" proto="tcp" prefork=5
- imaps cmd="imapd -s" listen="imaps" proto="tcp" prefork=1
- sieve cmd="timsieved" listen="sieve" proto="tcp" prefork=0
- lmtp cmd="lmtpd" listen="lmtp" proto="tcp" prefork=1
- lmtpunix cmd="lmtpd" listen="/run/cyrus/socket/lmtp" prefork=1
- syncserver cmd="sync_server" listen="csync"
+ #http cmd="httpd" listen="http" proto="tcp" prefork=5
+ imap cmd="imapd" listen=0.0.0.0:11143 proto="tcp" prefork=5
+ #https cmd="httpd -s" listen="https" proto="tcp" prefork=5
+ #imaps cmd="imapd -s" listen="imaps" proto="tcp" prefork=1
+ #sieve cmd="timsieved" listen="sieve" proto="tcp" prefork=0
+ #lmtp cmd="lmtpd" listen="lmtp" proto="tcp" prefork=1
+ #lmtpunix cmd="lmtpd" listen="/run/cyrus/socket/lmtp" prefork=1
+ #syncserver cmd="sync_server" listen="csync"
}
EVENTS {
# this is required
checkpoint cmd="ctl_cyrusdb -c" period="39"
# Expire deleted folders older than 28 days.
deleteprune cmd="cyr_expire -E 4 -D 28" at="0400"
# Expire deleted messages older than 28 days.
expungeprune cmd="cyr_expire -E 4 -X 28" at="0132"
# this is only necessary if caching TLS sessions
tlsprune cmd="tls_prune" at="0400"
# this is only necessary if using duplicate delivery suppression
delprune cmd="cyr_expire -E 3" at="0400"
}
DAEMON {
# this is only necessary if using idled for IMAP IDLE
idled cmd="idled"
}
File Metadata
Details
Attached
Mime Type
text/x-diff
Expires
Mon, Sep 15, 7:44 PM (1 d, 20 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
287606
Default Alt Text
(6 KB)
Attached To
Mode
R2 kolab
Attached
Detach File
Event Timeline
Log In to Comment