[Postfix] Use Redis master if set
parent
f6b3a6e874
commit
15fb2e22ea
|
@ -39,21 +39,24 @@ RUN groupadd -g 102 postfix \
|
||||||
|
|
||||||
COPY supervisord.conf /etc/supervisor/supervisord.conf
|
COPY supervisord.conf /etc/supervisor/supervisord.conf
|
||||||
COPY syslog-ng.conf /etc/syslog-ng/syslog-ng.conf
|
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 stop-supervisor.sh /usr/local/sbin/stop-supervisor.sh
|
COPY stop-supervisor.sh /usr/local/sbin/stop-supervisor.sh
|
||||||
COPY postfix.sh /opt/postfix.sh
|
COPY postfix.sh /opt/postfix.sh
|
||||||
COPY rspamd-pipe-ham /usr/local/bin/rspamd-pipe-ham
|
COPY rspamd-pipe-ham /usr/local/bin/rspamd-pipe-ham
|
||||||
COPY rspamd-pipe-spam /usr/local/bin/rspamd-pipe-spam
|
COPY rspamd-pipe-spam /usr/local/bin/rspamd-pipe-spam
|
||||||
COPY whitelist_forwardinghosts.sh /usr/local/bin/whitelist_forwardinghosts.sh
|
COPY whitelist_forwardinghosts.sh /usr/local/bin/whitelist_forwardinghosts.sh
|
||||||
COPY stop-supervisor.sh /usr/local/sbin/stop-supervisor.sh
|
COPY stop-supervisor.sh /usr/local/sbin/stop-supervisor.sh
|
||||||
|
COPY docker-entrypoint.sh /docker-entrypoint.sh
|
||||||
|
|
||||||
RUN chmod +x /opt/postfix.sh \
|
RUN chmod +x /opt/postfix.sh \
|
||||||
/usr/local/bin/rspamd-pipe-ham \
|
/usr/local/bin/rspamd-pipe-ham \
|
||||||
/usr/local/bin/rspamd-pipe-spam \
|
/usr/local/bin/rspamd-pipe-spam \
|
||||||
/usr/local/bin/whitelist_forwardinghosts.sh \
|
/usr/local/bin/whitelist_forwardinghosts.sh \
|
||||||
/usr/local/sbin/stop-supervisor.sh
|
/usr/local/sbin/stop-supervisor.sh
|
||||||
|
RUN rm -rf /tmp/* /var/tmp/*
|
||||||
|
|
||||||
EXPOSE 588
|
EXPOSE 588
|
||||||
|
|
||||||
CMD exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|
ENTRYPOINT ["/docker-entrypoint.sh"]
|
||||||
|
|
||||||
RUN rm -rf /tmp/* /var/tmp/*
|
CMD exec /usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [[ ! -z ${REDIS_SLAVEOF_IP} ]]; then
|
||||||
|
cp /etc/syslog-ng/syslog-ng-redis_slave.conf /etc/syslog-ng/syslog-ng.conf
|
||||||
|
fi
|
||||||
|
|
||||||
|
exec "$@"
|
|
@ -0,0 +1,49 @@
|
||||||
|
@version: 3.19
|
||||||
|
@include "scl.conf"
|
||||||
|
options {
|
||||||
|
chain_hostnames(off);
|
||||||
|
flush_lines(0);
|
||||||
|
use_dns(no);
|
||||||
|
dns_cache(no);
|
||||||
|
use_fqdn(no);
|
||||||
|
owner("root"); group("adm"); perm(0640);
|
||||||
|
stats_freq(0);
|
||||||
|
bad_hostname("^gconfd$");
|
||||||
|
};
|
||||||
|
source s_src {
|
||||||
|
unix-stream("/dev/log");
|
||||||
|
internal();
|
||||||
|
};
|
||||||
|
destination d_stdout { pipe("/dev/stdout"); };
|
||||||
|
destination d_redis_ui_log {
|
||||||
|
redis(
|
||||||
|
host("`REDIS_SLAVEOF_IP`")
|
||||||
|
persist-name("redis1")
|
||||||
|
port(`REDIS_SLAVEOF_PORT`)
|
||||||
|
command("LPUSH" "POSTFIX_MAILLOG" "$(format-json time=\"$S_UNIXTIME\" priority=\"$PRIORITY\" program=\"$PROGRAM\" message=\"$MESSAGE\")\n")
|
||||||
|
);
|
||||||
|
};
|
||||||
|
destination d_redis_f2b_channel {
|
||||||
|
redis(
|
||||||
|
host("`REDIS_SLAVEOF_IP`")
|
||||||
|
persist-name("redis2")
|
||||||
|
port(`REDIS_SLAVEOF_PORT`)
|
||||||
|
command("PUBLISH" "F2B_CHANNEL" "$MESSAGE")
|
||||||
|
);
|
||||||
|
};
|
||||||
|
filter f_mail { facility(mail); };
|
||||||
|
# start
|
||||||
|
# overriding warnings are still displayed when the entrypoint runs its initial check
|
||||||
|
# warnings logged by postfix-mailcow to syslog are hidden to reduce repeating msgs
|
||||||
|
filter f_overrides { not match("overriding earlier entry" value("MESSAGE")); };
|
||||||
|
# end
|
||||||
|
filter f_skip_local { not facility (local0, local1, local2, local3, local4, local5, local6, local7); };
|
||||||
|
log {
|
||||||
|
source(s_src);
|
||||||
|
filter(f_skip_local);
|
||||||
|
filter(f_overrides);
|
||||||
|
destination(d_stdout);
|
||||||
|
filter(f_mail);
|
||||||
|
destination(d_redis_ui_log);
|
||||||
|
destination(d_redis_f2b_channel);
|
||||||
|
};
|
Loading…
Reference in New Issue