2023-12-07 21:55:15 +00:00
|
|
|
#!/bin/bash
|
2023-12-07 21:55:15 +00:00
|
|
|
|
2023-12-07 21:55:15 +00:00
|
|
|
if [ $(id -u) -eq 0 ]
|
|
|
|
then
|
|
|
|
echo "script is run by kanboard user now, this cronjob is obsolete"
|
|
|
|
exit 0
|
|
|
|
fi
|
|
|
|
|
2023-12-07 21:55:15 +00:00
|
|
|
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )"
|
|
|
|
cd $DIR
|
2023-12-07 21:55:15 +00:00
|
|
|
. ./.env
|
|
|
|
# stop the containers to make sure the data doesn't change during backup.
|
2023-12-07 21:55:15 +00:00
|
|
|
podman stop wordpress_wordpress_1 wordpress_db_1
|
2023-12-07 21:55:15 +00:00
|
|
|
|
|
|
|
# Example backup command:
|
|
|
|
# backup: is the remote backup server, defined in ~/.ssh/config - ends with a :
|
|
|
|
# repositories-borg/synthikat is the path on the remote server - ends with a ::
|
|
|
|
# 'backup{now:%Y%m%d}' is the backup name, this includes today's date in the name
|
|
|
|
# the rest are the file paths. You can append as many as you want.
|
2023-12-07 21:55:15 +00:00
|
|
|
podman unshare borg create --stats --progress cyberbackup:repositories-borg/synthikat::'backup{now:%Y%m%d-%M}' ../wp-content ../db_data
|
2023-12-07 21:55:15 +00:00
|
|
|
|
|
|
|
# restart the containers
|
2023-12-07 21:55:15 +00:00
|
|
|
podman start wordpress_wordpress_1 wordpress_db_1
|
2023-12-07 21:55:15 +00:00
|
|
|
|
|
|
|
# Delete all the backups which are too old, to save space in the long term.
|
2023-12-07 21:55:15 +00:00
|
|
|
borg prune --keep-daily=7 --keep-weekly=4 cyberbackup:repositories-borg/synthikat
|