#!/bin/bash TIMESTAMP=$(date +%Y-%m-%d_%H-%M-%S) 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}" mkdir -p "$BACKUP_DIR" 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" if [[ -n "$BACKUP_RETENTION" ]]; then cd "$BACKUP_DIR" ls -1t ${BACKUP_DB}_*.dump.tar.gz | tail -n +$((BACKUP_RETENTION + 1)) | xargs -r rm -f fi