myvemail/build/run/docker-entrypoint/entrypoint.sh

46 lines
896 B
Bash
Executable file

#!/usr/bin/env bash
# Abort if an error is encountered
set -e
# Exit function
trap '[ "${?}" -ne 77 ] || exit 77' ERR
function die
{
local reset="\e[0m"
local red="\e[0m\e[0;31m"
local yellow="\e[0m\e[0;33m"
echo -e "${red}
Error encountered in the following init script:
${yellow}
${@}
${red}
Aborting...
${reset}"
exit 77
}
# Reset logs
for log in /var/log/mail/maillog{,.{0..9}} /var/log/mail/maillog.debug{,.{0..9}} /var/log/mail/reject.log
do
if [ ! -f ${log} ]
then
touch ${log}
fi
done
syslogd -O /var/log/mail/maillog -s ${MYVEMAIL_LOG_SIZE:-2000000} -b 10
# Run all scripts in init folder
for file in /docker-entrypoint/init.d/*.sh
do
bash -c ${file} || die ${file}
done
# Reload services
dovecot reload &&
postfix reload &&
echo -e "\n\e[1;32mMail service is ready\e[0m\n"
# Monitor log
tail -f /var/log/mail/maillog.debug{,.{0..9}} # /var/log/mail/maillog{,.{0..9}}