mirror of https://gitgud.io/fatchan/jschan.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
768 B
32 lines
768 B
#!/bin/bash
|
|
|
|
#change these
|
|
APP_NAME=""
|
|
MONGO_DATABASE="jschan"
|
|
MONGO_HOST=""
|
|
MONGO_PORT=""
|
|
MONGO_USER=""
|
|
MONGO_PASSWORD=""
|
|
TIMESTAMP=`date +%F-%H%M`
|
|
BACKUPS_DIR="/path/to/$APP_NAME"
|
|
|
|
#probably dont change these
|
|
DB_BACKUP_NAME="$APP_NAME-$TIMESTAMP.gz"
|
|
FILE_BACKUP_NAME="$APP_NAME-$TIMESTAMP-files.zip"
|
|
DB_ARCHIVE_PATH="$BACKUPS_DIR/$DB_BACKUP_NAME"
|
|
FILE_ARCHIVE_PATH="$BACKUPS_DIR/$FILE_BACKUP_NAME"
|
|
|
|
#make folder
|
|
mkdir -p $BACKUPS_DIR
|
|
|
|
#backups files
|
|
zip -r -0 $FILE_ARCHIVE_PATH ./static
|
|
|
|
#backup db
|
|
mongodump --username $MONGO_USER --password $MONGO_PASSWORD --authenticationDatabase admin --db $MONGO_DATABASE --archive=$DB_ARCHIVE_PATH --gzip
|
|
rm -rf dump
|
|
|
|
#delete older than 7 days
|
|
sudo find $ARCHIVE_PATH -type f -name "*.gz" -mtime +7 -exec rm -f {} \;
|
|
|
|
exit 0
|
|
|