You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
mailu/start.sh

53 lines
1.5 KiB
Bash

#!/bin/sh
cat <<< EOF
__ _ _
/ _| | | (_)
| |_ _ __ ___ ___ _ __ ___ ___| |_ ___ _ ___
| _| '__/ _ \/ _ \ '_ \ / _ \/ __| __/ _ \ | |/ _ \
| | | | | __/ __/ |_) | (_) \__ \ || __/_| | (_) |
|_| |_| \___|\___| .__/ \___/|___/\__\___(_)_|\___/
| |
|_|
For documentation, please visit https://freeposte.io
EOF
# When postfix is installed non-interactively, the file does not get copied to
# the postfix chroot, thus causing smtpd to fail, fix this at runtime
cp /etc/services /var/spool/postfix/etc/
# Create necessary directories
mkdir -p \
/data/mail \
/data/webmail/tmp \
/data/logs \
/data/ssl
# Create the main database if necessary
if [ ! -f /data/freeposte.db ]
sqlite3 /data/freeposte.db .databases > /dev/null
fi
# Fixing permissions
chown mail:mail /data/freeposte.db
chown -R mail:mail /data/mail
chown -R www-data:www-data /data/webmail /data/logs/webmail
# Copy the system snakeoil certificate if none is provided
if [ ! -f /data/ssl/cert.pem ]; then
cat <<< EOF
No TLS certificate is installed, a snakeoil ceritifcate is thus
being configured. You MUST NOT run a production server with this
certificate, as the private key is known publicly.
You have been warned.
EOF
cp /etc/ssl/private/ssl-cert-snakeoil.key /data/ssl/key.pem
cp /etc/ssl/certs/ssl-cert-snakeoil.pem /data/ssl/cert.pem
fi
# Finally run the server
/usr/bin/supervisord -c /etc/supervisor/supervisord.conf