49 lines
999 B
Bash
Executable File
49 lines
999 B
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
USER_CONTAINERS="homeassistant-pod codeserver jellyfin pgadmin nextcloud-pod calibre nexus git-pod caddy.socket caddy"
|
|
ROOT_CONTAINERS=
|
|
|
|
DOCKER_ROOT=/var/docker
|
|
BACKUP_TARGET=$DOCKER_ROOT/tmp
|
|
NAS_TARGET="$NAS_ROOT/daily/$HOST_NAME/backup.$DAY"
|
|
|
|
backup_daily1() {
|
|
BACKUP_SOURCE="/var"
|
|
BACKUP_EXCLUDE_DIRS=(docker)
|
|
}
|
|
|
|
backup_daily2() {
|
|
BACKUP_SOURCE="/var/docker"
|
|
BACKUP_EXCLUDE_DIRS=(vol tmp)
|
|
}
|
|
|
|
backup_daily3() {
|
|
BACKUP_SOURCE="/var/docker/vol"
|
|
BACKUP_EXCLUDE_DIRS=()
|
|
}
|
|
|
|
|
|
before_backup() {
|
|
let local rc=0
|
|
#dump_mariadb $DOCKER_ROOT/dump/mysql
|
|
#let rc=rc+$?
|
|
dump_postgresql ncd_pg $DOCKER_ROOT/dump/nextcloud
|
|
let rc=rc+$?
|
|
dump_postgresql gitea_pg $DOCKER_ROOT/dump/gitea
|
|
let rc=rc+$?
|
|
if [ $rc -gt 0 ]; then
|
|
return 1
|
|
fi
|
|
stop_containers
|
|
return $?
|
|
}
|
|
|
|
after_backup() {
|
|
let local rc=0
|
|
start_containers
|
|
let rc=rc+$?
|
|
copy_to_nas "$BACKUP_TARGET" "$NAS_TARGET"
|
|
let rc=rc+$?
|
|
return $rc
|
|
}
|