GoBack was created out of the need for a simple, minimal, and easy-to-use backup solution. While many existing backup software options are powerful, they were often too complex to set up or didn't cover specific needs. GoBack aims to be a straightforward tool that can run as a system service and reliably do its job.
It supports scheduling via Crontab expressions and intervals, allowing for flexible backup intervals, such as every 57 seconds.
Current Status: This project is a Work In Progress (W.I.P). Features are being developed and tested.
Disclaimer: Most of the tests in this project were written with AI assistance, because the generated tests are generally better than the ones I write manually.
- Database Backups: Support for MariaDB.
- Volume Backups: Backup Docker volumes and other mounted storage.
- Directory Backups: Simple file and directory backups.
- Cloud Storage Integration: Store backups on S3 compatible storage.
- Compression: Reduce backup size for efficient storage.
- Encryption / Decryption: AES-GCM encryption during backup and CLI decryption support.
- Flexible Scheduling: Use Crontab expressions or intervals for scheduling.
- CLI Commands: Run the service with
goback startand decrypt archives withgoback decrypt.
The following features are planned for future releases:
- PostgreSQL Support
- MongoDB Support
- MySQL Support (Currently use the MariaDB driver)
Installation instructions will be provided once the project reaches a more stable state.
Start GoBack:
goback start --dir /etc/gobackDecrypt an encrypted archive:
goback decrypt /path/to/backup.tar.gz.enc --key "your-key"Or resolve key from config/spec:
goback decrypt /path/to/backup.tar.gz.enc my-spec.yml --dir /etc/gobackThis project is licensed under the GNU General Public License v3.0 License - see the LICENSE file for details.