...
Code Block | ||||
---|---|---|---|---|
| ||||
#!/bin/sh FILENAME=$(basename $0 .sh) ARCHIVE=${FILENAME}_$(date +%F-%T) ARCHIVE=${FILENAME}.tar.gz ERRFILE=${FILENAME}_$(date +%F-%T).err DMPFILE=${FILENAME}_$(date +%F-%T).dmp LOG_DIR=/tmp BACKUP_WORKDIR=/tmp BACKUP_ARCHIVEDIR=/tmp MARIADB_BACKUP_EXE_DIR="/usr/bin" DB_USER=policy DB_PWD=******* HOST=host.docker.internal PORT=3355 # cleanup old backups removeOldBackups() { for i in `ls $BACKUP_ARCHIVEDIR/$FILENAME*.tar.gz | grep -v $ARCHIVE` do rm $i >/dev/null 2>/dev/null done } cd / echo "Backup Started" # call backup utility { "$MARIADB_BACKUP_EXE_DIR"/mysqldump --all-databases --add-drop-database --compact --routines --host=$HOST --user=$DB_USER --password= $DB_PWD --log-error=/tmp/$ERRFILE > /tmp/$DMPFILE } echo >&2 "Backup Complete" # create a tar archive from the backup directory tar cvzf $BACKUP_ARCHIVEDIR/$ARCHIVE $BACKUP_WORKDIR/$DMPFILE $BACKUP_WORKDIR/$ERRFILE >/dev/null 2>/dev/null # check for errors if [ -s "$BACKUP_WORKDIR/$ERRFILE" ] then rm $BACKUP_WORKDIR/$DMPFILE $BACKUP_WORKDIR/$ERRFILE exit 01 else rm $BACKUP_WORKDIR/$DMPFILE $BACKUP_WORKDIR/$ERRFILE removeOldBackups exit 10 fi |
docker build . -t mysqldump_backup
...