added postfix, z-push, dagent

This commit is contained in:
andreas
2023-04-04 20:19:20 +00:00
parent 950fbccf48
commit 109098ae55
9 changed files with 62 additions and 51 deletions

View File

@@ -19,7 +19,8 @@ EOF
# use envsubst in entrypoint script to convert config templates to actual config files
COPY --chmod=0775 entrypoint.sh /entrypoint.sh
# https://documentation.kopano.io/kopanocore_administrator_manual/configure_kc_components.html#configure-kopano-dagent-for-delivery-via-unix-socket
EXPOSE 236
EXPOSE 236 # mapi (server)
EXPOSE 2003 # lmtp (dagent)
VOLUME /etc/kopano
VOLUME /var/lib/kopano/attachments
ENTRYPOINT ["/entrypoint.sh"]

View File

@@ -19,6 +19,7 @@ services:
ports:
- 3307:3306
webapp:
build: ./webapp
image: webapp
labels:
- traefik.enable=true
@@ -34,21 +35,48 @@ services:
networks:
- default
- traefik
z-push:
build: ./z-push
image: z-push
labels:
- traefik.enable=true
- traefik.http.routers.webapp.rule=Host(`$MAIL_DOMAIN`) && PathPrefix(`/Microsoft-Server-ActiveSync`)
- traefik.http.routers.webapp.tls=true
- traefik.http.routers.webapp.tls.certResolver=default
volumes:
- z-push:/var/lib/z-push
- ./etc-zntrl/z-push:/etc/z-push:ro
ports:
- 8081:80
depends_on:
- server
networks:
- default
- traefik
dagent:
build: ./core
image: core
depends_on:
- server
command: /usr/sbin/kopano-dagent
postfix:
build: ./postfix
image: postfix
ports:
- 8025:25
volumes:
- spool:/var/spool/postfix
- ./etc-zntrl/postfix:/etc/postfix:ro
- ./etc-zntrl/ssl:/etc/ssl:ro
networks:
traefik:
external: true
volumes:
database:
attachments:
# z-push:
# spool:
z-push:
spool:
# dagent:
# image: core
# depends_on:
# - db
# - server
# command: /usr/sbin/kopano-dagent
# spooler:
# image: core
# depends_on:
@@ -61,21 +89,3 @@ volumes:
# - db
# - server
# command: /usr/sbin/kopano-search
# z-push:
# image: z-push
# labels:
# - traefik.enable=true
# - traefik.http.routers.webapp.rule=Host(`$MAIL_DOMAIN`) && PathPrefix(`/Microsoft-Server-ActiveSync`)
# - traefik.http.routers.webapp.tls=true
# - traefik.http.routers.webapp.tls.certResolver=default
# volumes:
# - z-push:/var/lib/z-push
# depends_on:
# - server
# networks:
# - default
# - traefik
# postfix:
# image: postfix
# volumes:
# - spool:/var/spool/postfix

View File

@@ -4,12 +4,12 @@
# infix for where the server should listen for LMTP connections.
#
# "unix:/var/spool/kopano/dagent.sock" — local socket
# "*:236" — port 2003, all protocols
# "[::]:236" — port 2003 on IPv6 only
# "[2001:db8::1]:236" — port 2003 on specific address only
# "*:2003" — port 2003, all protocols
# "[::]:2003" — port 2003 on IPv6 only
# "[2001:db8::1]:2003" — port 2003 on specific address only
#
#lmtp_listen = *%lo:2003
lmtp_listen = unix:/var/spool/kopano/dagent.sock
lmtp_listen = *:2003
#lmtp_listen = unix:/var/spool/kopano/dagent.sock
# connection to the storage server
#server_socket = file:///var/run/kopano/server.sock
@@ -21,7 +21,8 @@ lmtp_listen = unix:/var/spool/kopano/dagent.sock
#log_method = auto
# Loglevel (0(none), 1(crit), 2(err), 3(warn), 4(notice), 5(info), 6(debug))
log_level = 5
log_file = /var/log/kopano/dagent.log
log_file = /dev/stdout
# log_file = /var/log/kopano/dagent.log
log_timestamp = yes
# Log raw message to a file. Can be "no", "all", or a list of usernames

View File

@@ -1,6 +1,7 @@
# See /usr/share/postfix/main.cf.dist for a commented, more complete version
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
maillog_file = /dev/stdout
# appending .domain is the MUA's job.
append_dot_mydomain = no
@@ -25,7 +26,8 @@ mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
virtual_mailbox_domains = zntrl.de
virtual_mailbox_maps = hash:/etc/postfix/vmailbox
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_transport = lmtp:unix:/var/spool/kopano/dagent.sock
# virtual_transport = lmtp:unix:/var/spool/kopano/dagent.sock
virtual_transport = lmtp:kopano-postfix-1:2003
# default domains
default_transport = smtp:[relay.zntrl.de]:465

View File

@@ -1 +0,0 @@
/usr/share/postfix/makedefs.out

View File

@@ -3,17 +3,8 @@ FROM alpine:latest
# install apt packages
ENV TZ Europe/Berlin
RUN apk add --no-cache postfix spamassassin rsyslog logrotate xz
# install s6 process manager
ADD https://github.com/just-containers/s6-overlay/releases/download/v3.1.1.2/s6-overlay-noarch.tar.xz /tmp
ADD https://github.com/just-containers/s6-overlay/releases/download/v3.1.1.2/s6-overlay-x86_64.tar.xz /tmp
RUN <<EOF
tar -C / -Jxpf /tmp/s6-overlay-noarch.tar.xz
tar -C / -Jxpf /tmp/s6-overlay-x86_64.tar.xz
EOF
COPY ./etc/s6-overlay /etc/s6-overlay
# install kopano core
WORKDIR /root
COPY --chmod=0775 entrypoint.sh /entrypoint.sh
EXPOSE 25
VOLUME /var/spool/postfix
# HEALTHCHECK --start-period=350s CMD echo QUIT|nc localhost 25|grep "220 .* ESMTP Postfix"
ENTRYPOINT ["/init"]
ENTRYPOINT ["/entrypoint.sh"]
CMD ["postfix", "start-fg"]

3
postfix/entrypoint.sh Normal file
View File

@@ -0,0 +1,3 @@
#!/usr/bin/env sh
set -e
exec "$@"

4
z-push/30-z-push.ini Normal file
View File

@@ -0,0 +1,4 @@
magic_quotes_gpc = off
register_globals = off
magic_quotes_runtime = off
short_open_tag = on

View File

@@ -18,6 +18,7 @@ wget -qO - https://download.kopano.io/zhub/z-push:/final/Ubuntu_20.04/Release.ke
echo "deb https://download.kopano.io/zhub/z-push:/final/Ubuntu_20.04/ /" >/etc/apt/sources.list.d/z-push.list
apt-get update
apt-get install -y z-push-kopano z-push-backend-kopano z-push-config-apache z-push-config-apache-autodiscover
apt-get install -y php-mbstring
apt-get install -f -y --no-install-recommends
# cleanup
apt-get autoclean
@@ -25,10 +26,9 @@ rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* ~/.cache ~/.npm
rm -rf core-11.0.2.50.507cbae-Ubuntu_20.04-amd64
EOF
# change php.ini
# php_flag magic_quotes_gpc = off
# php_flag register_globals = off
# php_flag magic_quotes_runtime = off
# php_flag short_open_tag = on
#sed -i -e 's/short_open_tag = Off/short_open_tag = on/' /etc/php/7.4/apache2/php.ini
#sed -i -e '/register_argc_argv =/a register_globals = off' /etc/php/7.4/apache2/php.ini
COPY 30-z-push.ini /etc/php/7.4/apache2/conf.d
# use envsubst in entrypoint script to convert config templates to actual config files
COPY --chmod=0775 entrypoint.sh /entrypoint.sh
EXPOSE 80