From c3dc2643598ed773c1d5ae4e42486748d101ada5 Mon Sep 17 00:00:00 2001 From: Sebastian Pravda Date: Thu, 16 Feb 2023 11:32:48 +0100 Subject: [PATCH] chore: add backup.sh script --- scripts/backup/backup.sh | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 scripts/backup/backup.sh diff --git a/scripts/backup/backup.sh b/scripts/backup/backup.sh new file mode 100644 index 0000000..0aa9c3c --- /dev/null +++ b/scripts/backup/backup.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +# get the current datetime and create a directory with that name +NOW=$(date +"%Y-%m-%d_%H-%M-%S") +mkdir -p /opt/backup/$NOW + +# copy all files in directory to the backup directory +cp -r /root/Portfolio/data-backend /opt/backup/$NOW + +# run pg_dump to backup the database +pg_dump postgresql://DB_USERNAME:DB_PASSWORD@localhost:5432/DATABASE > /opt/backup/$NOW/db.sql + +# compress the backup directory +tar -zcvf /opt/backup/$NOW.tar.gz /opt/backup/$NOW + +# remove the uncompressed backup directory +rm -rf /opt/backup/$NOW + +# scp the backup to the remote server +scp /opt/backup/$NOW.tar.gz USERNAME@SERVER_IP:/home/zalohy/backups/$NOW.tar.gz \ No newline at end of file