#!/usr/bin/env bash #APP="app" QM=0 STACKS="traefik nextcloud passbolt searxng gitea" LOG_FILE="/mnt/docker-persistent-data/docker/update-containers.log" usage() { # echo "Usage: $0 [-q quiet mode optional list compose services to recreate]" 1>&2 exit 1 } while getopts "q:h" o; do case "${o}" in # p) # APP=${OPTARG} # ;; q) STACKS=${OPTARG} QM=1 ;; h) usage ;; esac done shift $((OPTIND-1)) #if [[ $QM == 1 ]] && [ -z "${q}" ]; then # usage #fi echo $(date -d "+10 hours" "+%a %b %d %T") > $LOG_FILE pushd ~/docker &>> $LOG_FILE #if [ $QM = 0 ]; then # docker-compose ps --services # read -p "Enter services to recreate... " SERVICES #fi for SERVICE in $STACKS do #pushd ~/docker/$SERVICE #docker-compose -f ./$SERVICE/docker-compose.yml pull #docker-compose -f ./$SERVICE/docker-compose.yml rm -fs echo "Updating "$SERVICE >> $LOG_FILE docker-compose -f ./$SERVICE/docker-compose.yml up --quiet-pull -d &>> $LOG_FILE # docker-compose -p $APP stop $SERVICE # docker-compose -p $APP rm -f $SERVICE # docker-compose -p $APP up -d $SERVICE #popd done echo "Pruning system..." >> $LOG_FILE docker system prune -f &>> $LOG_FILE popd &>> $LOG_FILE