#!/bin/bash #/root/vaultwarden/backup.sh #load restic variables set -a source /root/.credentials-restic set +a export RESTIC_REPOSITORY="$RESTIC_REPOSITORY_BASE/Bitwarden" #Define a timestamp function timestamp() { date "+%b %d %Y %T %Z" } # insert timestamp into log echo echo echo "===============================================================================" # stop vaultwarden echo "$(timestamp): stopping vaultwarden" docker service scale vaultwarden_vaultwarden=0 # backup echo "$(timestamp): beginning backup" restic backup --limit-upload 3072 /etc/vaultwarden/data # start vaultwarden echo "$(timestamp): starting vaultwarden" docker service scale vaultwarden_vaultwarden=1 # forget and prune echo "$(timestamp): forget and prune" restic forget --prune --keep-daily 14 --keep-weekly 10 --keep-within 10w --keep-last 2 --group-by tags # check for errors echo "$(timestamp): checking for errors" restic check # insert timestamp into log echo echo "$(timestamp): finished" echo "==============================================================================="