|
|
|
@ -1,14 +1,17 @@ |
|
|
|
|
#!/bin/bash |
|
|
|
|
# |
|
|
|
|
# Dumps jschan database to gzip archive, and archives the static folder |
|
|
|
|
# |
|
|
|
|
|
|
|
|
|
#change these |
|
|
|
|
APP_NAME="" |
|
|
|
|
#variables, change me |
|
|
|
|
APP_NAME="whatever" |
|
|
|
|
MONGO_DATABASE="jschan" |
|
|
|
|
MONGO_HOST="" |
|
|
|
|
MONGO_PORT="" |
|
|
|
|
MONGO_USER="" |
|
|
|
|
MONGO_PASSWORD="" |
|
|
|
|
TIMESTAMP=`date +%F-%H%M` |
|
|
|
|
BACKUPS_DIR="/path/to/$APP_NAME" |
|
|
|
|
BACKUPS_DIR="/path/to/backups/folder/$APP_NAME" |
|
|
|
|
|
|
|
|
|
#probably dont change these |
|
|
|
|
DB_BACKUP_NAME="$APP_NAME-$TIMESTAMP.gz" |
|
|
|
@ -16,17 +19,16 @@ 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 |
|
|
|
|
#create backup folder |
|
|
|
|
mkdir -p $BACKUPS_DIR |
|
|
|
|
|
|
|
|
|
#backups files |
|
|
|
|
#archive (no compression) files |
|
|
|
|
zip -r -0 $FILE_ARCHIVE_PATH ./static |
|
|
|
|
|
|
|
|
|
#backup db |
|
|
|
|
#dump database to .gz archive |
|
|
|
|
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 |
|
|
|
|
#delete backups older than 7 days |
|
|
|
|
sudo find $ARCHIVE_PATH -type f -name "*.gz" -mtime +7 -exec rm -f {} \; |
|
|
|
|
|
|
|
|
|
exit 0 |
|
|
|
|
sudo find $ARCHIVE_PATH -type f -name "*.zip" -mtime +7 -exec rm -f {} \; |
|
|
|
|