mirror of
https://github.com/prodrigestivill/docker-postgres-backup-local.git
synced 2026-05-31 08:37:58 +00:00
Changed to use POSTGRES_DB.
This commit is contained in:
+1
-1
@@ -4,7 +4,7 @@ MAINTAINER Pau Rodriguez-Estivill "prodrigestivill@gmail.com"
|
||||
ADD install.sh install.sh
|
||||
RUN sh install.sh && rm install.sh
|
||||
|
||||
ENV POSTGRES_DATABASE **None**
|
||||
ENV POSTGRES_DB **None**
|
||||
ENV POSTGRES_HOST **None**
|
||||
ENV POSTGRES_PORT 5432
|
||||
ENV POSTGRES_USER **None**
|
||||
|
||||
@@ -15,6 +15,7 @@ Docker Compose:
|
||||
postgres:
|
||||
image: postgres
|
||||
environment:
|
||||
POSTGRES_DB: dbname
|
||||
POSTGRES_USER: user
|
||||
POSTGRES_PASSWORD: password
|
||||
|
||||
@@ -30,7 +31,7 @@ pgbackups:
|
||||
BACKUP_KEEP_DAYS: 7
|
||||
BACKUP_KEEP_WEEKS: 4
|
||||
BACKUP_KEEP_MONTHS: 6
|
||||
POSTGRES_DATABASE: dbname
|
||||
POSTGRES_DB: dbname
|
||||
POSTGRES_USER: user
|
||||
POSTGRES_PASSWORD: password
|
||||
POSTGRES_EXTRA_OPTS: '-Z9 --schema=public --blobs'
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
set -e
|
||||
set -o pipefail
|
||||
|
||||
if [ "${POSTGRES_DATABASE}" = "**None**" ]; then
|
||||
echo "You need to set the POSTGRES_DATABASE environment variable."
|
||||
if [ "${POSTGRES_DB}" = "**None**" ]; then
|
||||
echo "You need to set the POSTGRES_DB environment variable."
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -36,22 +36,22 @@ KEEP_WEEKS=`expr $((($BACKUP_KEEP_WEEKS * 7) + 1))`
|
||||
KEEP_MONTHS=`expr $((($BACKUP_KEEP_MONTHS * 31) + 1))`
|
||||
|
||||
#Initialize filename vers and dirs
|
||||
DFILE="$BACKUP_DIR/daily/$POSTGRES_DATABASE-`date +%Y%m%d-%H%M%S`.sql.gz"
|
||||
WFILE="$BACKUP_DIR/weekly/$POSTGRES_DATABASE-`date +%G%V`.sql.gz"
|
||||
MFILE="$BACKUP_DIR/monthly/$POSTGRES_DATABASE-`date +%Y%m`.sql.gz"
|
||||
DFILE="$BACKUP_DIR/daily/$POSTGRES_DB-`date +%Y%m%d-%H%M%S`.sql.gz"
|
||||
WFILE="$BACKUP_DIR/weekly/$POSTGRES_DB-`date +%G%V`.sql.gz"
|
||||
MFILE="$BACKUP_DIR/monthly/$POSTGRES_DB-`date +%Y%m`.sql.gz"
|
||||
mkdir -p "$BACKUP_DIR/daily/" "$BACKUP_DIR/weekly/" "$BACKUP_DIR/monthly/"
|
||||
|
||||
#Create dump
|
||||
echo "Creating dump of ${POSTGRES_DATABASE} database from ${POSTGRES_HOST}..."
|
||||
pg_dump -f "$DFILE" $POSTGRES_HOST_OPTS $POSTGRES_DATABASE
|
||||
echo "Creating dump of ${POSTGRES_DB} database from ${POSTGRES_HOST}..."
|
||||
pg_dump -f "$DFILE" $POSTGRES_HOST_OPTS $POSTGRES_DB
|
||||
|
||||
#Copy (hardlink) for each entry
|
||||
ln -vf "$DFILE" "$WFILE"
|
||||
ln -vf "$DFILE" "$MFILE"
|
||||
|
||||
#Clean old files
|
||||
find "$BACKUP_DIR/daily" -maxdepth 1 -mtime +$KEEP_DAYS -name "$POSTGRES_DATABASE-*.sql*" -exec rm -rf '{}' ';'
|
||||
find "$BACKUP_DIR/weekly" -maxdepth 1 -mtime +$KEEP_WEEKS -name "$POSTGRES_DATABASE-*.sql*" -exec rm -rf '{}' ';'
|
||||
find "$BACKUP_DIR/monthly" -maxdepth 1 -mtime +$KEEP_MONTHS -name "$POSTGRES_DATABASE-*.sql*" -exec rm -rf '{}' ';'
|
||||
find "$BACKUP_DIR/daily" -maxdepth 1 -mtime +$KEEP_DAYS -name "$POSTGRES_DB-*.sql*" -exec rm -rf '{}' ';'
|
||||
find "$BACKUP_DIR/weekly" -maxdepth 1 -mtime +$KEEP_WEEKS -name "$POSTGRES_DB-*.sql*" -exec rm -rf '{}' ';'
|
||||
find "$BACKUP_DIR/monthly" -maxdepth 1 -mtime +$KEEP_MONTHS -name "$POSTGRES_DB-*.sql*" -exec rm -rf '{}' ';'
|
||||
|
||||
echo "SQL backup uploaded successfully"
|
||||
|
||||
Reference in New Issue
Block a user