(simatec) Beta 0.6.0
This commit is contained in:
parent
d641f8801d
commit
30733904de
5 changed files with 223 additions and 25 deletions
23
README.md
23
README.md
|
@ -80,6 +80,25 @@ If Let's Encrypt is disabled, the Piler is at http://your-piler-domain or at htt
|
||||||
> After installation, any changes can be made in piler.conf at any time and the install script can then be run again.
|
> After installation, any changes can be made in piler.conf at any time and the install script can then be run again.
|
||||||
|
|
||||||
|
|
||||||
|
**********************************************************************************************************
|
||||||
|
|
||||||
|
|
||||||
|
### Update Guide:
|
||||||
|
|
||||||
|
You can execute the following commands to update the containers.
|
||||||
|
Here the current yml files are downloaded from Github and the containers are updated if necessary.
|
||||||
|
|
||||||
|
```
|
||||||
|
cd /opt/piler-docker
|
||||||
|
bash update.sh
|
||||||
|
```
|
||||||
|
|
||||||
|
* After a successful update, unused container images can be removed from the system with the following command:
|
||||||
|
|
||||||
|
```
|
||||||
|
docker system prune
|
||||||
|
```
|
||||||
|
|
||||||
**********************************************************************************************************
|
**********************************************************************************************************
|
||||||
|
|
||||||
### Using the Piler on the command line
|
### Using the Piler on the command line
|
||||||
|
@ -116,6 +135,10 @@ To leave the container on the console you have to execute 2x `exit`.
|
||||||
**********************************************************************************************************
|
**********************************************************************************************************
|
||||||
|
|
||||||
## Changelog
|
## Changelog
|
||||||
|
### 0.6.0 (18.12.2022)
|
||||||
|
* (simatec) Update Installer
|
||||||
|
* (simatec) update.sh added
|
||||||
|
* (simatec) downgrade mariadb to v10.5
|
||||||
|
|
||||||
### 0.5.3 (17.12.2022)
|
### 0.5.3 (17.12.2022)
|
||||||
* (simatec) Installer Fix
|
* (simatec) Installer Fix
|
||||||
|
|
|
@ -2,7 +2,7 @@ version: "3"
|
||||||
services:
|
services:
|
||||||
|
|
||||||
mysql:
|
mysql:
|
||||||
image: mariadb:10.9.4
|
image: mariadb:10.5
|
||||||
container_name: mysql_piler
|
container_name: mysql_piler
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
cap_drop:
|
cap_drop:
|
||||||
|
|
|
@ -23,7 +23,7 @@ services:
|
||||||
environment:
|
environment:
|
||||||
- DEFAULT_EMAIL=${LETSENCRYPT_EMAIL}
|
- DEFAULT_EMAIL=${LETSENCRYPT_EMAIL}
|
||||||
mysql:
|
mysql:
|
||||||
image: mariadb:10.9.4
|
image: mariadb:10.5
|
||||||
container_name: mysql-piler
|
container_name: mysql-piler
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
cap_drop:
|
cap_drop:
|
||||||
|
|
|
@ -22,19 +22,52 @@ fi
|
||||||
|
|
||||||
HLINE="=================================================================="
|
HLINE="=================================================================="
|
||||||
|
|
||||||
|
BLA_metro=( 0.2 ' ' '= ' '== ' '=== ' ' ===' ' ==' ' =' )
|
||||||
|
|
||||||
|
BLA::play_loading_animation_loop() {
|
||||||
|
while true ; do
|
||||||
|
for frame in "${BLA_active_loading_animation[@]}" ; do
|
||||||
|
printf "\r%s" "${frame}"
|
||||||
|
sleep "${BLA_loading_animation_frame_interval}"
|
||||||
|
done
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
BLA::start_loading_animation() {
|
||||||
|
BLA_active_loading_animation=( "${@}" )
|
||||||
|
BLA_loading_animation_frame_interval="${BLA_active_loading_animation[0]}"
|
||||||
|
unset "BLA_active_loading_animation[0]"
|
||||||
|
tput civis # Hide the terminal cursor
|
||||||
|
BLA::play_loading_animation_loop &
|
||||||
|
BLA_loading_animation_pid="${!}"
|
||||||
|
}
|
||||||
|
|
||||||
|
BLA::stop_loading_animation() {
|
||||||
|
kill "${BLA_loading_animation_pid}" &> /dev/null
|
||||||
|
printf "\n"
|
||||||
|
tput cnorm # Restore the terminal cursor
|
||||||
|
}
|
||||||
|
|
||||||
|
#######################################################################################
|
||||||
|
installPth = "/opt/piler-docker"
|
||||||
|
configPth = "/opt/piler-docker/config"
|
||||||
|
etcPth = "/var/lib/docker/volumes/piler-docker_piler_etc/_data"
|
||||||
|
|
||||||
|
# Load config
|
||||||
. ./piler.conf
|
. ./piler.conf
|
||||||
if [ ! -f /opt/piler-docker/.env ]; then
|
|
||||||
|
if [ ! -f $installPth/.env ]; then
|
||||||
ln -s ./piler.conf .env
|
ln -s ./piler.conf .env
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -f /opt/piler-docker/docker-compose.yml ]; then
|
if [ -f $installPth/docker-compose.yml ]; then
|
||||||
rm /opt/piler-docker/docker-compose.yml
|
rm $installPth/docker-compose.yml
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||||
cp /opt/piler-docker/config/piler-ssl.yml /opt/piler-docker/docker-compose.yml
|
cp $configPth/piler-ssl.yml $installPth/docker-compose.yml
|
||||||
else
|
else
|
||||||
cp /opt/piler-docker/config/piler-default.yml /opt/piler-docker/docker-compose.yml
|
cp $configPth/piler-default.yml $installPth/docker-compose.yml
|
||||||
fi
|
fi
|
||||||
|
|
||||||
while true; do
|
while true; do
|
||||||
|
@ -45,8 +78,9 @@ while true; do
|
||||||
* ) echo -e "${red} Please confirm with y or n.";;
|
* ) echo -e "${red} Please confirm with y or n.";;
|
||||||
esac
|
esac
|
||||||
done
|
done
|
||||||
|
|
||||||
# old docker stop
|
# old docker stop
|
||||||
cd /opt/piler-docker
|
cd $installPth
|
||||||
docker-compose down
|
docker-compose down
|
||||||
|
|
||||||
# docker start
|
# docker start
|
||||||
|
@ -56,7 +90,7 @@ echo "${greenBold} start docker-compose for Piler"
|
||||||
echo "${greenBold}${HLINE}${normal}"
|
echo "${greenBold}${HLINE}${normal}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
cd /opt/piler-docker
|
cd $installPth
|
||||||
|
|
||||||
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||||
if ! docker network ls | grep -o "nginx-proxy"; then
|
if ! docker network ls | grep -o "nginx-proxy"; then
|
||||||
|
@ -72,8 +106,11 @@ fi
|
||||||
|
|
||||||
docker-compose up -d
|
docker-compose up -d
|
||||||
|
|
||||||
echo "${blue}********* Piler started.... Please wait........"
|
echo "${blue}********* Piler started... Please wait... *********"
|
||||||
|
|
||||||
|
BLA::start_loading_animation "${BLA_metro[@]}"
|
||||||
sleep 20
|
sleep 20
|
||||||
|
BLA::stop_loading_animation
|
||||||
|
|
||||||
echo
|
echo
|
||||||
echo "${blue}${HLINE}"
|
echo "${blue}${HLINE}"
|
||||||
|
@ -81,11 +118,11 @@ echo "${blue} backup the File config-site.php"
|
||||||
echo "${blue}${HLINE}${normal}"
|
echo "${blue}${HLINE}${normal}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
if [ ! -f /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php.bak ]; then
|
if [ ! -f $etcPth/config-site.php.bak ]; then
|
||||||
cp /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php.bak
|
cp $etcPth/config-site.php $etcPth/config-site.php.bak
|
||||||
else
|
else
|
||||||
rm /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php
|
rm $etcPth/config-site.php
|
||||||
cp /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php.bak /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php
|
cp $etcPth/config-site.php.bak $etcPth/config-site.php
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
@ -94,7 +131,7 @@ echo "${blue} set User settings ..."
|
||||||
echo "${blue}${HLINE}${normal}"
|
echo "${blue}${HLINE}${normal}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
cat >> /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php <<EOF
|
cat >> $etcPth/config-site.php <<EOF
|
||||||
|
|
||||||
// Smarthost
|
// Smarthost
|
||||||
\$config['SMARTHOST'] = '$SMARTHOST';
|
\$config['SMARTHOST'] = '$SMARTHOST';
|
||||||
|
@ -163,7 +200,7 @@ echo "set Mailcow Api-Key config"
|
||||||
echo "${blue}${HLINE}${normal}"
|
echo "${blue}${HLINE}${normal}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
cat >> /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php <<EOF
|
cat >> $etcPth/config-site.php <<EOF
|
||||||
|
|
||||||
// Mailcow API
|
// Mailcow API
|
||||||
\$config['MAILCOW_API_KEY'] = '$MAILCOW_APIKEY';
|
\$config['MAILCOW_API_KEY'] = '$MAILCOW_APIKEY';
|
||||||
|
@ -173,22 +210,22 @@ cat >> /var/lib/docker/volumes/piler-docker_piler_etc/_data/config-site.php <<EO
|
||||||
include('auth-mailcow.php');
|
include('auth-mailcow.php');
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
curl -o /var/lib/docker/volumes/piler-docker_piler_etc/_data/auth-mailcow.php https://raw.githubusercontent.com/patschi/mailpiler-mailcow-integration/master/auth-mailcow.php
|
curl -o $etcPth/auth-mailcow.php https://raw.githubusercontent.com/patschi/mailpiler-mailcow-integration/master/auth-mailcow.php
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# add config settings
|
# add config settings
|
||||||
|
|
||||||
if [ ! -f /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf.bak ]; then
|
if [ ! -f $etcPth/piler.conf.bak ]; then
|
||||||
cp /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf.bak
|
cp $etcPth/piler.conf $etcPth/piler.conf.bak
|
||||||
else
|
else
|
||||||
rm /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf
|
rm $etcPth/piler.conf
|
||||||
cp /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf.bak /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf
|
cp $etcPth/piler.conf.bak $etcPth/piler.conf
|
||||||
fi
|
fi
|
||||||
|
|
||||||
sed -i "s/default_retention_days=.*/default_retention_days=$DEFAULT_RETENTION_DAYS/" /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf
|
sed -i "s/default_retention_days=.*/default_retention_days=$DEFAULT_RETENTION_DAYS/" $etcPth/piler.conf
|
||||||
sed -i "s/update_counters_to_memcached=.*/update_counters_to_memcached=1/" /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf
|
sed -i "s/update_counters_to_memcached=.*/update_counters_to_memcached=1/" $etcPth/piler.conf
|
||||||
|
|
||||||
cat >> /var/lib/docker/volumes/piler-docker_piler_etc/_data/piler.conf <<EOF
|
cat >> $etcPth/piler.conf <<EOF
|
||||||
queuedir=/var/piler/store
|
queuedir=/var/piler/store
|
||||||
EOF
|
EOF
|
||||||
|
|
||||||
|
@ -199,7 +236,7 @@ echo "${blue} restart piler ..."
|
||||||
echo "${blue}${HLINE}${normal}"
|
echo "${blue}${HLINE}${normal}"
|
||||||
echo
|
echo
|
||||||
|
|
||||||
cd /opt/piler-docker
|
cd $installPth
|
||||||
docker-compose restart piler
|
docker-compose restart piler
|
||||||
|
|
||||||
echo
|
echo
|
||||||
|
|
138
update.sh
Normal file
138
update.sh
Normal file
|
@ -0,0 +1,138 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
# Colors
|
||||||
|
if [ -z ${BASH_SOURCE} ]; then
|
||||||
|
blue=`echo "\e[1m\e[34m"`
|
||||||
|
green=`echo "\e[1m\e[32m"`
|
||||||
|
greenBold=`echo "\e[1m\e[1;32m"`
|
||||||
|
redBold=`echo "\e[1m\e[1;31m"`
|
||||||
|
red=`echo "\e[1m\e[31m"`
|
||||||
|
purple=`echo "\e[1m\e[35m"`
|
||||||
|
bold=`echo "\e[1m"`
|
||||||
|
normal=`echo "\e[0m"`
|
||||||
|
else
|
||||||
|
blue=`echo -e "\e[1m\e[34m"`
|
||||||
|
green=`echo -e "\e[1m\e[32m"`
|
||||||
|
greenBold=`echo -e "\e[1m\e[1;32m"`
|
||||||
|
redBold=`echo -e "\e[1m\e[1;31m"`
|
||||||
|
puple=`echo -e "\e[1m\e[35m"`
|
||||||
|
bold=`echo -e "\e[1m"`
|
||||||
|
normal=`echo -en "\e[0m"`
|
||||||
|
fi
|
||||||
|
|
||||||
|
HLINE="=================================================================="
|
||||||
|
|
||||||
|
BLA_metro=( 0.2 ' ' '= ' '== ' '=== ' ' ===' ' ==' ' =' )
|
||||||
|
|
||||||
|
BLA::play_loading_animation_loop() {
|
||||||
|
while true ; do
|
||||||
|
for frame in "${BLA_active_loading_animation[@]}" ; do
|
||||||
|
printf "\r%s" "${frame}"
|
||||||
|
sleep "${BLA_loading_animation_frame_interval}"
|
||||||
|
done
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
|
BLA::start_loading_animation() {
|
||||||
|
BLA_active_loading_animation=( "${@}" )
|
||||||
|
BLA_loading_animation_frame_interval="${BLA_active_loading_animation[0]}"
|
||||||
|
unset "BLA_active_loading_animation[0]"
|
||||||
|
tput civis # Hide the terminal cursor
|
||||||
|
BLA::play_loading_animation_loop &
|
||||||
|
BLA_loading_animation_pid="${!}"
|
||||||
|
}
|
||||||
|
|
||||||
|
BLA::stop_loading_animation() {
|
||||||
|
kill "${BLA_loading_animation_pid}" &> /dev/null
|
||||||
|
printf "\n"
|
||||||
|
tput cnorm # Restore the terminal cursor
|
||||||
|
}
|
||||||
|
|
||||||
|
#######################################################################################
|
||||||
|
|
||||||
|
installPth = "/opt/piler-docker"
|
||||||
|
configPth = "/opt/piler-docker/config"
|
||||||
|
|
||||||
|
# config load
|
||||||
|
. ./piler.conf
|
||||||
|
|
||||||
|
if [ ! -f $installPth/.env ]; then
|
||||||
|
ln -s ./piler.conf .env
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f $installPth/docker-compose.yml ]; then
|
||||||
|
rm $installPth/docker-compose.yml
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Download yml update
|
||||||
|
echo
|
||||||
|
echo "${greenBold}${HLINE}"
|
||||||
|
echo "${greenBold} Download Update files for Piler"
|
||||||
|
echo "${greenBold}${HLINE}${normal}"
|
||||||
|
echo
|
||||||
|
|
||||||
|
cd $configPth
|
||||||
|
|
||||||
|
# Update yml
|
||||||
|
curl -OL https://raw.githubusercontent.com/simatec/piler-docker/main/config/piler-default.yml
|
||||||
|
curl -OL https://raw.githubusercontent.com/simatec/piler-docker/main/config/piler-ssl.yml
|
||||||
|
|
||||||
|
# old docker stop
|
||||||
|
cd $installPth
|
||||||
|
|
||||||
|
docker-compose down
|
||||||
|
|
||||||
|
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||||
|
cp $configPth/piler-ssl.yml $installPth/docker-compose.yml
|
||||||
|
else
|
||||||
|
cp $configPth/piler-default.yml $installPth/docker-compose.yml
|
||||||
|
fi
|
||||||
|
|
||||||
|
# start Update Container
|
||||||
|
echo
|
||||||
|
echo "${greenBold}${HLINE}"
|
||||||
|
echo "${greenBold} Update Container for Piler"
|
||||||
|
echo "${greenBold}${HLINE}${normal}"
|
||||||
|
echo
|
||||||
|
|
||||||
|
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||||
|
if ! docker network ls | grep -o "nginx-proxy"; then
|
||||||
|
docker network create nginx-proxy
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "${blue}${HLINE}"
|
||||||
|
echo "${blue} docker network created"
|
||||||
|
echo "${blue}${HLINE}${normal}"
|
||||||
|
echo
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
docker-compose up --force-recreate --build -d
|
||||||
|
|
||||||
|
echo "${blue}********* Piler started... Please wait... *********"
|
||||||
|
|
||||||
|
BLA::start_loading_animation "${BLA_metro[@]}"
|
||||||
|
sleep 10
|
||||||
|
BLA::stop_loading_animation
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "${greenBold}${HLINE}"
|
||||||
|
echo "${greenBold} Piler Update completed successfully"
|
||||||
|
echo "${greenBold}${HLINE}${normal}"
|
||||||
|
echo
|
||||||
|
echo
|
||||||
|
echo "${greenBold}${HLINE}"
|
||||||
|
if [ "$USE_LETSENCRYPT" = "yes" ]; then
|
||||||
|
echo "${greenBold}you can start in your Browser with https://${PILER_DOMAIN}!"
|
||||||
|
else
|
||||||
|
echo "${greenBold}you can start in your Browser with:"
|
||||||
|
echo "${greenBold}http://${PILER_DOMAIN} or http://local-ip"
|
||||||
|
fi
|
||||||
|
echo "${greenBold}${HLINE}${normal}"
|
||||||
|
|
||||||
|
echo
|
||||||
|
echo "${blue}${HLINE}"
|
||||||
|
echo "${blue}You can remove the old unused containers on your system!"
|
||||||
|
echo "${blue}Execute the following command: docker system prune"
|
||||||
|
echo "${blue}${HLINE}${normal}"
|
||||||
|
echo
|
Loading…
Reference in a new issue