#!/bin/bash TIMESTAMP=$(date +%Y-%m-%d_%H-%M-%S) BACKUP_FILE="${MONGO_INITDB_DATABASE}_${TIMESTAMP}.dump.tar.gz" TEMP_DUMP="/tmp/mongo_dump_${TIMESTAMP}" # Create & zip backup mkdir -p "$BACKUP_DIR" mongodump --host localhost --db "$MONGO_INITDB_DATABASE" -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 ${MONGO_INITDB_DATABASE}_*.dump.tar.gz 2>/dev/null | tail -n +$((BACKUP_RETENTION + 1)) | xargs -r rm -f fi