From a8bf864499ff4efa413c01932fbd0e731fe46691 Mon Sep 17 00:00:00 2001 From: Brian O'Reilly Date: Tue, 30 Dec 2025 13:06:06 -0500 Subject: [PATCH] Lets institute some operations around here A directory for ops scripts, plus a script to backup the posgres database that holds up asteroid.radio. --- docker/operations/db_backup.sh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100755 docker/operations/db_backup.sh diff --git a/docker/operations/db_backup.sh b/docker/operations/db_backup.sh new file mode 100755 index 0000000..a64fd99 --- /dev/null +++ b/docker/operations/db_backup.sh @@ -0,0 +1,19 @@ +#!/usr/bin/env bash + +## Backup the postgresql instance running in our local +## asteroid-postgres docker container + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +# Source the runtime environment for asteroid.radio. creds, paths &c + +if [[ -f ${HOME}/SourceCode/lisp/asteroid/docker/environment.sh ]]; then + . ${HOME}/SourceCode/lisp/asteroid/docker/environment.sh +fi + +BACKUP_DIR=${SCRIPT_DIR}/db_backups +mkdir -p "$BACKUP_DIR" + +docker exec asteroid-postgres sh -c 'pg_dump $POSTGRES_DB -U $POSTGRES_USER -F p' | xz --compress -c > ${BACKUP_DIR}/db_$(date +%Y-%m-%d-%H.%M.%S)_backup.sql.xz + +