dackup
dackup copied to clipboard
Dackup is a free, open source, backup client for your files and database to Cloud
Dackup
Dackup is a fullstack backup tool was written by .NET Core, that is fast, efficient and secure. It supports the three major operating systems (Linux, macOS, Windows)
Features
- [x] Cross-Platform (win/osx/linux).
- [x] Docker Container support
- [x] No Dependence.
- [x] Archive folder or files to tar.gz
- [x] Multiple Databases source support.
- [x] Multiple Storage type support.
- [x] Multiple Notifier type support.
Databases
- [x] PostgreSQL
- [x] MySQL
- [x] MongoDB
- [x] SQL Server
- [x] Redis
Archive
Archive files or folder into a .tar.gz
file.
Storages
- [x] Local
- [x] Amazon S3
- [x] Alibaba Cloud Object Storage Service (OSS)
- [x] FTP
Notifiers
Usage
Help
$ /your_path/dackup
A backup app for your server or database or desktop
Usage: dackup [options] [command]
Options:
-?|-h|--help Show help information
Commands:
new Generate a config file
perform Performing your backup by config
Run 'dackup [command] --help' for more information about a command.
Use arrow keys to scroll. Press 'q' to exit.
Generate config
$ /your_path/dackup new
Generate a config file
Usage: dackup new [arguments] [options]
Arguments:
model Name of the model
Options:
-?|-h|--help Show help information
Use arrow keys to scroll. Press 'q' to exit.
Perform
$ /your_path/dackup perform
Usage: dackup perform [options]
Options:
--config-file <FILE> Required. The File name of the config.
--log-path <PATH> op. The File path of the log.
--tmp-path <PATH> op. The tmp path.
-?|-h|--help Show help information
Use arrow keys to scroll. Press 'q' to exit.
Configuration
Use the subcommand new
to generate a task config file, such as mockup config file
$ /your_path/dackup new my_first_task
Docker
Compiled Docker image can be pulled from: Docker Hub.
$ docker pull huobazi/dackup:latest
$ docker run --name dackup --net=host -v /config/dackup.config:/config/dackup.config huobazi/dackup perform --config-file /config/dackup.config
Crontab
$ crontab -l
0 1 * * * /your_path/dackup perform --config-file /your_path/your_first_task.config --tmp-path /your_tmp_path/first --log-path /your_log_path
0 2 * * * /your_path/dackup perform --config-file /your_path/your_second_task.config --tmp-path /your_tmp_path/second --log-path /your_log_path
0 3 * * * docker run --name dackup --net=host -v /config/dackup.config:/config/dackup.config huobazi/dackup perform --config-file /config/dackup.config
Install
You can download binary from releases page and place it in $PATH directory.
Or pull it from Docker Hub
Build
Install dotnet core sdk 3.1 then run
./release.sh
see also: Release Script
Contributing
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Added some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request
Contributors
License
MIT