docker-db-backup

Backup multiple database types on a scheduled basis with many customizable options

MIT License

Stars
852
Committers
46

Bot releases are hidden (Show)

docker-db-backup - 4.0.1

Published by tiredofit 12 months ago

Changed

  - Restore - Stop using DB_DUMP_TARGET and instead browse using DEFAULT_BACKUP_PATH
docker-db-backup - 4.0.0

Published by tiredofit 12 months ago

4.0.0 2023-11-08

This is the fourth major release to the DB Backup image which started as a basic MySQL backup service in early 2017. With each major release brings enhancements, bugfixes, removals along with breaking changes and this one is no different.

This release brings functionality requested by the community such as multiple host backup support by means of independent scheduler tasks,blackout periods, better resource usage, better security via file encryption, file permissions, and more verbosity via log files. , and also merges contributions from other developers.

Upgrading to this image should for the most part work for most users, but will involve event upgrading environment variables as the formathas changed significantly. Old variables should continue to work, however are unsupported and will be removed with the 4.3.0 release, whenever that will be.

A significant amount of development hours were put in to accomodate for feature requests by the community. If you are using this in a commercial setting or find this image valuable, please consider sponsoring my work for a period of time or engaging in a private support offering. More details at https://www.tiredofit.ca/sponsor

Added

  - Backup Multiple Hosts in same image all with different options (scheduling, compression, destination, cleanup) (Use `DBXX_option` variables)
  - Backup limits how many backup jobs run concurrently
  - Backup Scheduling now allows using a timestamp (e.g. `Dec 12 2023 03:00:00`) - credit benvia@github
  - Backup Scheduling now allows using a cron expression (e.g `00 03 * * *`)
  - Backup Blackout period to skip backing up during a period of time
  - Backup runs as dedicated user (no longer root)
  - Backup can have specific file permissions set upon completion (e.g. `700` or `rwx------`)
  - Backups can run with reduced priority mode to allow for fair scheduling across system
  - Backups - MySQL/MariaDB now has ability to backup events
  - Backups - Microsoft SQL server now has option to backup transaction logs
  - Backups - Postgres now backs up globals  - credit oscarsiles@github
  - Backups with Azure synchronize storage before upload - credit eoehen@github
  - Encrypt backup file with a passphrase or a GPG Public Key ability
  - Log backup jobs to file along with log rotation
  - Notification support upon job failure via Email, Mattermost, Matrix, Rocketchat
  - Zabbix Metrics now auto discovers new jobs
  - Zabbix Metrics sends metrics relating to backed up filename, checksum hash, and the duration of backup/compression time, checksum time, encryption time
  - New Debug Capabilities

Changed

  - Reworked Documentation
  - Reworked all functions and renamed all variables
  - Many variables now use a prefix of `DEFAULT_` to operate on all backup jobs
  - Can be overridden per backup job by setting `DB_<option>` or to unset default variable `DB_<option>=unset`
  - Renamed variables and terms
     - `_DUMP_LOCATION` -> `_BACKUP_LOCATION`
     - `_DUMP_BEGIN` -> `_BACKUP_BEGIN`
     - `_DUMP_FREQ` -> `_BACKUP_INTERVAL`
     - `_DUMP_TARGET`` -> `_FILESYSTEM_PATH`
     - `_DUMP_ARCHIVE`` -> `_FILESYSTEM_PATH`
     - `EXTRA_DUMP_OPTS`` -> `_EXTRA_BACKUP_OPTS`
     - `TEMP_LOCATION`` -> `TEMP_PATH`
  - Backups - AWS CLI updated to 1.29.78
  - Backups - InfluxDB 2 Client version updated to 2.7.3
  - Backups - Microsoft SQL server now compresses files post initial backup
  - Backups - Manual backups handle aborting gracefully
  - Checksum routines now complete in half the time
  - Checksum variable now supports "NONE"
  - Zabbix metrics sending occurs in one process as opposed to singular
  - Cleanup Only cleanup files that match same backup name pattern
  - Cleanup/Archive uses relative path instead of absolute with creating_latest_symlink
  - A handful of code optimizations and cleanup

Removed

  - `ENABLE_CHECKSUM` - has been wrapped into `_CHECKSUM=none`
docker-db-backup - 3.12.0

Published by tiredofit 12 months ago

Added

  - Add DB_AUTH functionalith for Postgresql databases
docker-db-backup - 3.11.1

Published by tiredofit 12 months ago

Added

  - Switch to tiredofit/alpine:edge for newer packages
  - Postgresql 16 support

Changed

  - Add --break-system-packages flag to pip when installing blobxfer
docker-db-backup - 3.11.0

Published by tiredofit about 1 year ago

Added

  - Introduce aarch64 (ARMv8) support for Microsoft SQL Server backups
  - Microsoft ODBC Driver 18.3.2.1-1
  - Microsoft SQL Client 18.3.1.1-1
docker-db-backup - 3.10.5

Published by tiredofit about 1 year ago

Added

  - Add option to drop exsiting data from MongoDB restore

Changed

  - Fix some capabilities of not being able to select mongodb manually to restore
docker-db-backup - 3.10.4

Published by tiredofit about 1 year ago

Changed

  - Use authentication database for MongoDB restores
docker-db-backup - 3.10.3

Published by tiredofit about 1 year ago

Changed

  - Change sorting for restore script
docker-db-backup - 3.10.2

Published by tiredofit about 1 year ago

Changed

  - Update to wording when sending files to blobxfer
  - Remove --databases flag when backing up a single mysql/mariadb backup which allows to omit the "USE <db_name>" statement in the backup allowing for better restores
docker-db-backup - 3.10.1

Published by tiredofit about 1 year ago

Changed

  - Bugfix to 3.10.0 with syntax error revolving around unbraced variable
docker-db-backup - 3.10.0

Published by tiredofit about 1 year ago

Added

  - Add EXTRA_DUMP_OPTS and EXTRA_ENUMERATION_OPTS to add different arguments when checking for databases, vs doing the actual backup
docker-db-backup - 3.9.12

Published by tiredofit about 1 year ago

Changed

  - Perform additional checks for ENABLE_CHECKSUM=FALSE and skip executing actions for S3/BlobXfer
docker-db-backup - 3.9.10

Published by tiredofit about 1 year ago

Changed

  - Stop trying to move a non existent checksum file when ENABLE_CHECKSUM=FALSE
docker-db-backup - 3.9.9

Published by tiredofit about 1 year ago

Changed

  - Start compiling aws-cli instead of from packages to continue to support arm/v7
docker-db-backup - 3.9.8

Published by tiredofit about 1 year ago

Changed

  - Restore armv7 and aarch64 builds
docker-db-backup - 3.9.7

Published by tiredofit over 1 year ago

Changed

  - Cleanup check_exit_code parameter and reduce duplicate output
docker-db-backup - 3.9.6

Published by tiredofit over 1 year ago

Changed

  - Resolve issues introduced with 3.9.3. Split exit codes to be specific for backing up and moving. Uses paremter $11 for post backup scripts
docker-db-backup - 3.9.5

Published by tiredofit over 1 year ago

Changed

  - Start building Influx DB v1 manually due to being removed from Alpine repositories
docker-db-backup - 3.9.4

Published by tiredofit over 1 year ago

Added

  - Add abliity to use --rsyncable argument to zstd archives
docker-db-backup - 3.9.3

Published by tiredofit over 1 year ago

Added

  - Add notification if blobxfer/s3 upload fails (credit @alwynpan)
  - Add zip package
Badges
Extracted from project README
GitHub release Build Status Docker Stars Docker Pulls Become a sponsor Paypal Donate
Related Projects