summaryrefslogtreecommitdiff
path: root/mail/entrypoint.sh
blob: 2dc8f265dbf9ed93ddc8521fbe8bdecd4870ad22 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
#!/usr/bin/env bash
set -e

KEY_FILE=/etc/opendkim/keys/mail.private

# Wait for DKIM key (mounted from host)
for i in $(seq 1 30); do
    [[ -f "$KEY_FILE" ]] && break
    echo "Waiting for DKIM key at $KEY_FILE ... (run mail/install.sh on host)"
    sleep 2
done
if [[ ! -f "$KEY_FILE" ]]; then
    echo "ERROR: DKIM key not found at $KEY_FILE" >&2
    exit 1
fi

chmod 600 "$KEY_FILE"
chown opendkim:opendkim "$KEY_FILE"

# Start rsyslog for Postfix logging
rsyslogd

# Start OpenDKIM (inet socket on localhost:8891)
opendkim -x /etc/opendkim.conf
sleep 2

# Start Postfix
postfix start

# Keep container alive, forward mail log to stdout
touch /var/log/mail.log
exec tail -f /var/log/mail.log