generated from ztimson/template
Fixed backups & added replica recovery
All checks were successful
Build and publish / Build Container (push) Successful in 1m22s
All checks were successful
Build and publish / Build Container (push) Successful in 1m22s
This commit is contained in:
12
backup.sh
12
backup.sh
@@ -1,18 +1,16 @@
|
||||
#!/bin/bash
|
||||
|
||||
TIMESTAMP=$(date +%Y-%m-%d_%H-%M-%S)
|
||||
BACKUP_FILE="${MONGO_INITDB_DATABASE}_${TIMESTAMP}.dump.tar.gz"
|
||||
if [[ -z "$BACKUP_DB" ]]; then BACKUP_DB="$MONGO_INITDB_DATABASE"; fi
|
||||
BACKUP_FILE="${BACKUP_DB}_${TIMESTAMP}.dump.tar.gz"
|
||||
TEMP_DUMP="/tmp/mongo_dump_${TIMESTAMP}"
|
||||
|
||||
# Create & zip backup
|
||||
mkdir -p "$BACKUP_DIR"
|
||||
if [[ -z "$BACKUP_DB" ]]; then BACKUP_DB="$MONGO_INITDB_DATABASE"; fi
|
||||
mongodump --host localhost --db "$BACKUP_DB" -u "$MONGO_INITDB_ROOT_USERNAME" -p "$MONGO_INITDB_ROOT_USERNAME" --out "$TEMP_DUMP"
|
||||
mongodump --host localhost --db "$BACKUP_DB" -u "$MONGO_INITDB_ROOT_USERNAME" -p "$MONGO_INITDB_ROOT_PASSWORD" --out "$TEMP_DUMP"
|
||||
tar -czf "${BACKUP_DIR}/${BACKUP_FILE}" -C "$TEMP_DUMP" .
|
||||
rm -rf "$TEMP_DUMP"
|
||||
|
||||
# Remove old backups
|
||||
if [[ -n "$BACKUP_RETENTION" ]]; then
|
||||
cd "$BACKUP_DIR"
|
||||
ls -1t dump_${MONGO_INITDB_DATABASE}_*.tar.gz | tail -n +$((BACKUP_RETENTION + 1)) | xargs -r rm -f
|
||||
cd "$BACKUP_DIR"
|
||||
ls -1t ${BACKUP_DB}_*.dump.tar.gz | tail -n +$((BACKUP_RETENTION + 1)) | xargs -r rm -f
|
||||
fi
|
||||
|
||||
Reference in New Issue
Block a user