diff --git a/README.md b/README.md index 9ae1075..79eaa4f 100644 --- a/README.md +++ b/README.md @@ -93,7 +93,13 @@ Here the current yml files are downloaded from Github and the containers are upd ``` cd /opt/piler-docker -bash update.sh +bash install.sh +``` +You will get a selection menu with the following options: + +``` +1) Install-Piler +2) Update-Piler ``` * After a successful update, unused container images can be removed from the system with the following command: @@ -139,6 +145,10 @@ To leave the container on the console you have to execute 2x `exit`. ## Changelog +### 0.8.2 (18.01.2023) +* (simatec) docker, curl and git Check added +* (simatec) Update Config added + ### 0.8.1 (17.01.2023) * (simatec) Docker Compose Check added diff --git a/install-piler.sh b/install-piler.sh index e5f8779..e9c6a25 100644 --- a/install-piler.sh +++ b/install-piler.sh @@ -50,6 +50,11 @@ BLA::stop_loading_animation() { ####################################################################################### +# App Check +for bin in curl docker git; do + if [[ -z $(which ${bin}) ]]; then echo "Cannot find ${bin}, exiting..."; exit 1; fi +done + # Docker-Compose Check if docker compose > /dev/null 2>&1; then if docker compose version --short | grep "^2." > /dev/null 2>&1; then @@ -80,6 +85,8 @@ else exit 1 fi +####################################################################################### + # Path-Settings installPth="/opt/piler-docker" configPth="/opt/piler-docker/config" @@ -88,7 +95,7 @@ etcPth="/var/lib/docker/volumes/piler-docker_piler_etc/_data" # Load config . ./piler.conf -############################## Installer Settings ####################################### +############################## Installer Settings ###################################### if [ ! -f $installPth/.configDone ]; then # Piler-Domain @@ -192,6 +199,21 @@ if [ ! -f $installPth/.configDone ]; then # config done touch $installPth/.configDone + +elif [ -f $installPth/.configDone ]; then + select name in Install-Piler Update-Piler + do + if [ $name = "Install-Piler" ]; then + echo + echo "${blue}Ready for: $name${normal}" && break + echo + elif [ $name = "Update-Piler" ]; then + echo + echo "${blue}Ready for: $name${normal}" + echo + bash $installPth/update.sh && exit 1 + fi + done fi # uninstall Postfix diff --git a/update.sh b/update.sh index f87233b..c254381 100644 --- a/update.sh +++ b/update.sh @@ -50,6 +50,43 @@ BLA::stop_loading_animation() { ####################################################################################### +# App Check +for bin in curl docker git; do + if [[ -z $(which ${bin}) ]]; then echo "Cannot find ${bin}, exiting..."; exit 1; fi +done + +# Docker-Compose Check +if docker compose > /dev/null 2>&1; then + if docker compose version --short | grep "^2." > /dev/null 2>&1; then + COMPOSE_VERSION=native + echo -e "${red}Found Docker Compose Plugin (native).${normal}" + echo -e "${red}Setting the DOCKER_COMPOSE_VERSION Variable to native${normal}" + sleep 2 + echo -e "${purple}Notice: You´ll have to update this Compose Version via your Package Manager manually!${normal}" + else + echo -e "${red}Cannot find Docker Compose with a Version Higher than 2.X.X.${normal}" + exit 1 + fi +elif docker-compose > /dev/null 2>&1; then + if ! [[ $(alias docker-compose 2> /dev/null) ]] ; then + if docker-compose version --short | grep "^2." > /dev/null 2>&1; then + COMPOSE_VERSION=standalone + echo -e "${red}Found Docker Compose Standalone.${normal}" + echo -e "${red}Setting the DOCKER_COMPOSE_VERSION Variable to standalone${normal}" + sleep 2 + else + echo -e "${red}Cannot find Docker Compose with a Version Higher than 2.X.X.${normal}" + exit 1 + fi + fi + +else + echo -e "${red}Cannot find Docker Compose.${normal}" + exit 1 +fi + +####################################################################################### + while true; do read -ep "Do you want to perform the update?? (y/n): " yn case $yn in @@ -96,7 +133,11 @@ echo # old docker stop cd $installPth -docker-compose down +if [ $COMPOSE_VERSION = native ]; then + docker compose down +else + docker-compose down +fi if [ "$USE_LETSENCRYPT" = "yes" ]; then cp $configPth/piler-ssl.yml $installPth/docker-compose.yml @@ -123,7 +164,11 @@ if [ "$USE_LETSENCRYPT" = "yes" ]; then fi fi -docker-compose up --force-recreate --build -d +if [ $COMPOSE_VERSION = native ]; then + docker compose up --force-recreate --build -d +else + docker-compose up --force-recreate --build -d +fi echo "${blue}********* Piler started... Please wait... *********${normal}" @@ -250,7 +295,12 @@ echo "${blue}${HLINE}${normal}" echo cd $installPth -docker-compose restart piler + +if [ $COMPOSE_VERSION = native ]; then + docker compose restart piler +else + docker-compose restart piler +fi echo echo "${greenBold}${HLINE}"