Files
ad-ds-simple-file-server/redeploy
2026-02-18 18:15:00 +01:00

31 lines
647 B
Bash
Executable File

#!/usr/bin/env bash
set -euo pipefail
log() {
printf '[redeploy] %s\n' "$*"
}
if [[ ! -d .git ]]; then
printf '[redeploy] ERROR: run this script from the repository root.\n' >&2
exit 1
fi
log 'Stopping stack'
docker compose down
log 'Removing current local compose image(s)'
mapfile -t IMAGE_NAMES < <(docker compose config --images 2>/dev/null | sed '/^$/d' | sort -u)
if [[ "${#IMAGE_NAMES[@]}" -gt 0 ]]; then
docker image rm -f "${IMAGE_NAMES[@]}" || true
else
log 'No compose-managed local images found to remove.'
fi
log 'Pulling latest git changes'
git pull
log 'Starting stack'
docker compose up -d
log 'Redeploy complete'