Files
server-backup/nathan.sh
T

52 lines
1009 B
Bash
Executable File

#!/usr/bin/env bash
USER_CONTAINERS="homeserver.target"
ROOT_CONTAINERS=
#DOCKER_ROOT=/var/docker
CONTAINERS_ROOT=/var/containers
BACKUP_TARGET=$CONTAINERS_ROOT/tmp
NAS_TARGET="$NAS_ROOT/daily/$HOST_NAME/backup.$DAY"
backup_daily1() {
BACKUP_SOURCE="/var"
BACKUP_EXCLUDE_DIRS=(containers)
}
backup_daily2() {
BACKUP_SOURCE="/var/containers"
BACKUP_EXCLUDE_DIRS=(vol tmp)
}
backup_daily3() {
BACKUP_SOURCE="/var/containers/vol"
BACKUP_EXCLUDE_DIRS=()
}
before_backup() {
let local rc=0
#dump_mariadb $DOCKER_ROOT/dump/mysql
#let rc=rc+$?
dump_postgresql ncd_pg $CONTAINERS_ROOT/dump/nextcloud
let rc=rc+$?
dump_postgresql gitea_pg $CONTAINERS_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+$?
check_services
let rc=rc+$?
return $rc
}