(simatec) Beta 0.8.0
This commit is contained in:
parent
21515e2eb3
commit
de83ced596
2 changed files with 132 additions and 15 deletions
10
README.md
10
README.md
|
@ -65,13 +65,8 @@ git clone https://github.com/simatec/piler-docker.git
|
|||
cd /opt/piler-docker
|
||||
```
|
||||
|
||||
* configure your Piler settings
|
||||
|
||||
```
|
||||
nano piler.conf
|
||||
```
|
||||
|
||||
* after config start the Install
|
||||
* start the Install
|
||||
|
||||
```
|
||||
bash install-piler.sh
|
||||
|
@ -144,6 +139,9 @@ To leave the container on the console you have to execute 2x `exit`.
|
|||
|
||||
## Changelog
|
||||
|
||||
### 0.8.0 (17.01.2023)
|
||||
* (simatec) Config-Menu for Installer added
|
||||
|
||||
### 0.7.0 (15.01.2023)
|
||||
* (simatec) New Volumes added
|
||||
* (simatec) Fix Installer
|
||||
|
|
137
install-piler.sh
137
install-piler.sh
|
@ -49,6 +49,8 @@ BLA::stop_loading_animation() {
|
|||
}
|
||||
|
||||
#######################################################################################
|
||||
|
||||
# Path-Settings
|
||||
installPth="/opt/piler-docker"
|
||||
configPth="/opt/piler-docker/config"
|
||||
etcPth="/var/lib/docker/volumes/piler-docker_piler_etc/_data"
|
||||
|
@ -56,6 +58,132 @@ etcPth="/var/lib/docker/volumes/piler-docker_piler_etc/_data"
|
|||
# Load config
|
||||
. ./piler.conf
|
||||
|
||||
############################## Installer Settings #######################################
|
||||
|
||||
# Piler-Domain
|
||||
read -ep "Please set your Piler-Domain (Enter for default: piler.example.com): " pilerDomain
|
||||
pilerDomain=${pilerDomain:=piler.example.com}
|
||||
sed -i 's/PILER_DOMAIN=.*/PILER_DOMAIN="'$pilerDomain'"/g' ./piler.conf
|
||||
|
||||
# Piler-Admin-Mail
|
||||
read -ep "Please set your Mailserver Admin Mail (Enter for default: admin@example.com): " pilerAdminMail
|
||||
pilerAdminMail=${pilerAdminMail:=admin@example.com}
|
||||
sed -i 's/SUPPORT_MAIL=.*/SUPPORT_MAIL="'$pilerAdminMail'"/g' ./piler.conf
|
||||
|
||||
# retention Days
|
||||
read -ep "Please set retention days (Enter for default: 2555 Days ~ 7 Years): " retentionDays
|
||||
retentionDays=${retentionDays:=2555}
|
||||
sed -i 's/DEFAULT_RETENTION_DAYS=.*/DEFAULT_RETENTION_DAYS="'$retentionDays'"/g' ./piler.conf
|
||||
|
||||
# Smarthost
|
||||
read -ep "Please set your Smarthost (Enter for default: 127.0.0.1). Default settings can be used here!!: " pilerSmartHost
|
||||
pilerSmartHost=${pilerSmartHost:=127.0.0.1}
|
||||
sed -i 's/SMARTHOST=.*/SMARTHOST="'$pilerSmartHost'"/g' ./piler.conf
|
||||
|
||||
# IMAP Server
|
||||
read -ep "Please set your IMAP Server (Enter for default: imap.example.com): " imapServer
|
||||
imapServer=${imapServer:=imap.example.com}
|
||||
sed -i 's/IMAP_SERVER=.*/IMAP_SERVER="'$imapServer'"/g' ./piler.conf
|
||||
|
||||
# Timezone
|
||||
read -ep "Please set your Timezone (Enter for default: Europe/Berlin): " timeZone
|
||||
timeZone=${timeZone:=Europe/Berlin}
|
||||
timeZone="${timeZone////\\/}"
|
||||
sed -i 's/TIME_ZONE=.*/TIME_ZONE="'$timeZone'"/g' ./piler.conf
|
||||
|
||||
# MySql Database
|
||||
read -ep "Please set your MySql Database (Enter for default: piler): " pilerDataBase
|
||||
pilerDataBase=${pilerDataBase:=piler}
|
||||
sed -i 's/MYSQL_DATABASE=.*/MYSQL_DATABASE="'$pilerDataBase'"/g' ./piler.conf
|
||||
|
||||
# MySql User
|
||||
read -ep "Please set your MySql User (Enter for default: piler): " pilerUser
|
||||
pilerUser=${pilerUser:=piler}
|
||||
sed -i 's/MYSQL_USER=.*/MYSQL_USER="'$pilerUser'"/g' ./piler.conf
|
||||
|
||||
# MySql Password
|
||||
read -sp "Please set your MySql Password: " pilerPassword
|
||||
pilerPassword=$pilerPassword
|
||||
sed -i 's/MYSQL_PASSWORD=.*/MYSQL_PASSWORD="'$pilerPassword'"/g' ./piler.conf
|
||||
echo
|
||||
|
||||
# use Let's Encrypt
|
||||
while true; do
|
||||
read -ep "Enabled / Disabled (yes/no) Let's Encrypt? For local Run disabled / Y|N: " jn
|
||||
case $jn in
|
||||
[Yy]* ) sed -i 's/USE_LETSENCRYPT=.*/USE_LETSENCRYPT="yes"/g' ./piler.conf; break;;
|
||||
[Nn]* ) sed -i 's/USE_LETSENCRYPT=.*/USE_LETSENCRYPT="no"/g' ./piler.conf; break;;
|
||||
* ) echo -e "${red} Please confirm with Y or N.";;
|
||||
esac
|
||||
done
|
||||
|
||||
# reload config
|
||||
. ./piler.conf
|
||||
|
||||
# Let's Encrypt registration contact information
|
||||
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||
read -ep "Please set Let's Encrypt registration contact information (Enter for default: admin@example.com): " acmeContact
|
||||
acmeContact=${acmeContact:=admin@example.com}
|
||||
sed -i 's/LETSENCRYPT_EMAIL=.*/LETSENCRYPT_EMAIL="'$acmeContact'"/g' ./piler.conf
|
||||
fi
|
||||
|
||||
# use Mailcow
|
||||
while true; do
|
||||
read -ep "If Use Mailcow API Options (yes/no)? / Y|N: " jn
|
||||
case $jn in
|
||||
[Yy]* ) sed -i 's/USE_MAILCOW=.*/USE_MAILCOW=true/g' ./piler.conf; break;;
|
||||
[Nn]* ) sed -i 's/USE_MAILCOW=.*/USE_MAILCOW=false/g' ./piler.conf; break;;
|
||||
* ) echo -e "${red} Please confirm with Y or N.";;
|
||||
esac
|
||||
done
|
||||
|
||||
# reload config
|
||||
. ./piler.conf
|
||||
|
||||
if [ "$USE_MAILCOW" = true ]; then
|
||||
# Mailcow API-Key
|
||||
read -ep "Please set your Mailcow API-Key: " apiKey
|
||||
apiKey=$apiKey
|
||||
sed -i 's/MAILCOW_APIKEY=.*/MAILCOW_APIKEY="'$apiKey'"/g' ./piler.conf
|
||||
|
||||
# Mailcow Host Domain
|
||||
read -ep "Please set your Mailcow Host Domain (Enter for default: $imapServer): " mailcowHost
|
||||
mailcowHost=${mailcowHost:=$imapServer}
|
||||
sed -i 's/MAILCOW_HOST=.*/MAILCOW_HOST="'$mailcowHost'"/g' ./piler.conf
|
||||
fi
|
||||
|
||||
echo
|
||||
echo "${blue}${HLINE}"
|
||||
echo "All settings were saved in the piler.conf file"
|
||||
echo "and can be adjusted there at any time."
|
||||
echo "${blue}${HLINE}${normal}"
|
||||
echo
|
||||
|
||||
# uninstall Postfix
|
||||
while true; do
|
||||
read -ep "Postfix must be uninstalled prior to installation. Do you want to uninstall Postfix now? (y/n): " yn
|
||||
case $yn in
|
||||
[Yy]* ) apt purge postfix -y; break;;
|
||||
[Nn]* ) echo -e "${redBold} The installation process is aborted because Postfix has not been uninstalled.!! ${normal}"; exit;;
|
||||
* ) echo -e "${red} Please confirm with y or n.";;
|
||||
esac
|
||||
done
|
||||
|
||||
# start piler install
|
||||
while true; do
|
||||
read -ep "Do you want to start the Piler installation now? / Y|N: " yn
|
||||
case $yn in
|
||||
[Yy]* ) echo -e "${greenBold}Piler install started!! ${normal}"; break;;
|
||||
[Nn]* ) echo -e "${redBold}Aborting the Piler installation!! ${normal}"; exit;;
|
||||
* ) echo -e "${red} Please confirm with Y or N.";;
|
||||
esac
|
||||
done
|
||||
|
||||
#########################################################################################
|
||||
|
||||
# reload config
|
||||
. ./piler.conf
|
||||
|
||||
if [ ! -f $installPth/.env ]; then
|
||||
ln -s ./piler.conf .env
|
||||
fi
|
||||
|
@ -70,15 +198,6 @@ else
|
|||
cp $configPth/piler-default.yml $installPth/docker-compose.yml
|
||||
fi
|
||||
|
||||
while true; do
|
||||
read -ep "Postfix must be uninstalled prior to installation. Do you want to uninstall Postfix now? (y/n): " yn
|
||||
case $yn in
|
||||
[Yy]* ) apt purge postfix -y; break;;
|
||||
[Nn]* ) echo -e "${redBold} The installation process is aborted because Postfix has not been uninstalled.!! ${normal}"; exit;;
|
||||
* ) echo -e "${red} Please confirm with y or n.";;
|
||||
esac
|
||||
done
|
||||
|
||||
# old docker stop
|
||||
cd $installPth
|
||||
docker-compose down
|
||||
|
|
Loading…
Reference in a new issue