gobackup

🗄 CLI tool for backup your databases, files to cloud storages in schedully.

MIT License

Stars
1.3K
Committers
19

Bot releases are visible (Hide)

gobackup - v2.0.2

Published by github-actions[bot] over 1 year ago

Changelog

  • eb0b033 Add storage_class for S3 and Aliyun OSS, fix #146
  • 91d270a Fix Sqlite3 backup invalid command error #150.
  • e444478 Add host parameter to config (#152)
gobackup - v2.0.1

Published by github-actions[bot] over 1 year ago

Changelog

  • b779c16 Fix daemon has output duplicate log output bug.
gobackup - v2.0.0

Published by github-actions[bot] over 1 year ago

What's Changed

Add Web UI #141

  • Add Web UI for List models and allows performing backup.
  • Add stream log output on Web UI.
  • Add Vite, TailwindCSS, TypeScript and Ant Design for Web UI development.
  • Embed frontend static file into Go binary.
  • Add HTTP BaseAuth for protected Web UI.
  • Browser backup files on Web UI and support download file.
  • Add backup list and allows download from Web UI.
    • Support list and download on Web UI for (OSS, GCS, S3, Azure and all S3 compatible storages)
    • Support list for Local, SFTP, FTP, WebDAV.

SCR-20230327-f34
SCR-20230327-f39

Try it

docker run -d --name gobackup \
  -v $HOME/.gobackup:/etc/gobackup \
  -p 2703:2703 \
  huacnlee/gobackup:v2.0.0

And the visit http://127.0.0.1:2703

Breaking Changes

  • 4f6ed99 Remove additional_options on mysql config, please use args instead. #144
  • 768f70a Remove deprecated store_with config on model. #144

Other Changes

  • Add description for Model config, and show it on Web UI model list.
  • Add tables, exclude_tables option for MySQL and PostgreSQL. #140
  • Improve Logger to write to File and STDOUT at the same time.

Full Changelog: https://github.com/gobackup/gobackup/compare/v1.6.5...v2.0.0

gobackup - v1.6.5

Published by github-actions[bot] over 1 year ago

Changelog

  • e912ebb Fix scheduler error when run multiple tasks in parallel.
  • d585635 Fix scheduler wrong trigger all models, when every scheduler perform. #131 by @alexkorotysh
  • 2d6d5d8 Improve the Notifier title by prefix with status for easy to read.
gobackup - v1.6.4

Published by github-actions[bot] almost 2 years ago

Changelog

  • 579e02d Add "args" parameter to MongoDB (#123) by @snird

New Contributors

Full Changelog: https://github.com/gobackup/gobackup/compare/v1.6.3...v1.6.4

gobackup - v1.6.3

Published by github-actions[bot] almost 2 years ago

Changelog

  • Enable release for Linux ARM, fix #122
  • Fix #31: add FTPS / FTP Over TLS support by @ZachCheung (#121)

Full Changelog: https://github.com/gobackup/gobackup/compare/v1.6.2...v1.6.3

gobackup - v1.6.2

Published by github-actions[bot] almost 2 years ago

Changelog

  • c454d31 Add chiper option for OpenSSL.
models:
  demo:
    encrypt_with:
      type: openssl
      chiper: aes-256-ecb
      password: 123456
gobackup - v1.6.1

Published by github-actions[bot] almost 2 years ago

Changelog

  • 82a9337 Fix #119 for revert -pbkdf2 default config, instead of to use args config.

New OpenSSL config for pbkdf2 example:

models:
  demo:
    encrypt_with:
      type: openssl
      password: 123456
      salt: false
      args: -pbkdf2 -iter 1000
gobackup - v1.6.0

Published by github-actions[bot] almost 2 years ago

New features

  • 453d277 Add .env and ENV variable support for config (#118) by @ZachCheung
  • b564959 Add notifier: AWS SES by @huacnlee
  • bfc2170 Add notifier: SendGrid (#116) by @huacnlee

Usage of the ENV variable in config

Put the .env file in same directory of your config file, then GoBackup will load it.

Or just set the ENV variable in bash:

$ export AWS_ACCESS_KEY_ID=xxxxxxxxx
$ export AWS_SECRET_ACCESS_KEY=xxxxxxxxx

Now, in gobackup.yml, there can use $ENV_KEY or ${ENV_KEY} variable.

models:
  example:
    databases:
      postgresql:
        type: postgresql
        database: demo
        username: $POSTGRESQL_USERNAME
        password: $POSTGRESQL_PASSWORD
    storages:
      s3:
        type: s3
        bucket: gobackup-test
        region: ap-southeast-1
        path: backups
        access_key_id: $AWS_ACCESS_KEY_ID
        secret_access_key: ${AWS_SECRET_ACCESS_KEY}

Other changes

  • 1b85649 use humanize.Bytes() instead of MiB by @ZachCheung
  • 2cd1a5b update: use pbkdf2 for better security #65 by @HolgerHuo

New Contributors

Full Changelog: https://github.com/gobackup/gobackup/compare/v1.5.0...v1.6.0

gobackup - v1.5.0

Published by github-actions[bot] almost 2 years ago

🌈 New Features

  • Add notifier for send notifications to your, when the backup has been successfully or failed.
  • Add notifier: Mail, Webhook, Discord, Slack, Telegram, Feishu, DingTalk, Postmark.
  • Add storage: Azure Blob Storage.
  • Add storage: Baidu BOS.

Documentation has been updated, please visit https://gobackup.github.io to learn how to config the notifier.

gobackup - v1.4.0

Published by github-actions[bot] almost 2 years ago

New features

  • databases: Add SQLite supports. #100
  • storages: Add SFTP #103
  • Add for support perform multiple models delimited by comma #96

Other changes

  • Fix #107: fix Cloudflare R2 endpoint #109
  • ignore storage failure when has multi-storages #106
gobackup - v1.3.0

Published by github-actions[bot] almost 2 years ago

New features 🌈

  • Add gobackup start and gobackup run for run GoBackup as daemon. #89
  • Add Scheduler to perform backup in schedule. #89
  • Add to supports WebDAV storage. #8
  • Add Splitter for split large backup file into multiple parts. #94
  • Add before, after hooks for to database config, for allows you write shell script around database dump.
  • Add GOBACKUP_DIR env for special the dir of the GoBackup home dir, default: ~/.gobackup.
  • Add storages config to supports upload backup to multiple storages. #90
  • Deprecated storage_with config, use storages instead.
  • Add credentials_file config for GCS storage.
  • Improve logger output for show timestamp at first for tidy output.
  • Improve Tar for add pbzip2 and pixz support, and supports more compression format.

GitHub repo has been moved from huacnlee/gobackup to gobackup/gobackup.

Other changes

  • Improve directory supports for storages.
  • Add passpharase and rewrite auth logic for SCP storage.
  • 7433c41 gcs: skip delete empty directory
  • 5f5079f oss: support directory
  • a28ceec storage: rewrite ftp
  • f7d1616 only print debug log in debug or test mode
  • 51e11e0 scp: fix auth logic
  • 25bc1a5 rewrite scp
  • 53ede62 use temp dir as default workdir
  • d7f8543 add error check
  • 0514131 fixed typo and minor change log
  • 49a4423 fatal when no storage found
  • 1393783 fix re-initialize bug
  • a05e0ad fix cycler config permission
  • 5d9f3f4 warn when config file is too open
  • 45ad6cd fatal when no model found
  • d6715bd logger: add f and Fatal functions

Pull Requests

Full Changelog: https://github.com/huacnlee/gobackup/compare/v1.2.0...v1.3.0

gobackup - v1.2.0

Published by github-actions[bot] almost 2 years ago

🌈 New storage supports

Usage see documentation:

https://gobackup.github.io

Other changes

  • 8304a97 add socket config in PostgreSQL, MySQL, Redis. #82 by @ZachCheung
  • 5f851e3 Fix S3 timeout config rename from upload_timeout to timeout (Follow the document).
  • b924dae Improve log output for with scope prefix.
  • f3d4df8 Fix #64 to support run on Alpine Linux. #80 by @ZachCheung
gobackup - v1.1.2

Published by github-actions[bot] almost 2 years ago

Changelog

  • 93571c1 Fix #63 to support MongoDB empty password. by @ZachCheung
  • e981e6b Imporve tgz to supports use pigz when available #47 by @ZachCheung
gobackup - v1.1.1

Published by github-actions[bot] almost 2 years ago

Changelog

  • 43d18cb add s3:// style location #76
  • c660aff add removed file log
  • f0120fe fix cycler #77
  • 25647a3 fix default compress_with #75

New Contributors

gobackup - v1.1.0

Published by github-actions[bot] about 2 years ago

Changelog

  • b2ec120 [added] Add args option for setup addition arguments for pg_dump cli.
  • 612bd83 [added] added config key 'workdir' to specify a working base directory.
  • b879b3d [changed] S3 upload set default no timeout.
  • ea594c5 [added] Add upload_timeout for S3 option for setup timeout for upload.
  • Fix install script for auto get latest version and support install arm64 by get os arch.
gobackup - v1.0.1

Published by github-actions[bot] over 2 years ago

Changelog

  • 501905c Turn S3ForcePathStyle to true when using custom endpoint.
gobackup - v1.0.0

Published by github-actions[bot] over 3 years ago

Changelog

28fa67f Add --config option for special a config file path with command line. Fix #43
7ac6d66 Fix #61 ensure cleanup temp files after performed
a185bd4 Ensure to cleanup temp files
ee4d04f Fix CI config
88ee6e3 [added] noop tar compressor

gobackup - 0.8.2

Published by huacnlee almost 5 years ago

Changelog

82fbe0a Install script support root user;
1ac6f38 Fix #49 ftp.host config support ftp:// case;

gobackup - 0.8.1

Published by huacnlee about 5 years ago

Changelog

270e934 Fix #45 of cleaning up multiple tasks in parallel
790ade3 OSS upload threads upto 100