bloodhunterd / backup
Backup is an application to organize file and database backups. It supports compression, encrypted transfer, email reports and command execution before and after a process.
Fund package maintenance!
Ko Fi
Requires
- php: ^7.4 || ^8.0
- ext-bz2: *
- ext-intl: *
- ext-yaml: *
- monolog/monolog: ^2.0
- twig/twig: ^3.0
- vection-framework/di-container: dev-master
- vection-framework/validator: dev-master
Requires (Dev)
- phpstan/phpstan: ^0.12
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-master
This package is auto-updated.
Last update: 2022-07-31 00:18:28 UTC
README
Backup
Backup is an application to organize file and database backups. It supports compression, encrypted transfer, email reports and command execution before and after a process.
Features
- Simple configuration
- Strong compressions (Bzip2, Gzip)
- Supports MariaDB, MongoDB, MySQL and PostgreSQL databases
- Supports Docker container
- Execute commands before and after
- Secure and encrypted transfers
- Email reports
- Shows backup size and duration
Requirements
Agent
OS: Linux, Windows or MacOS
- PHP ^7.4 or ^8.0
- BZ2 (optional)
- CLI
- INTL
- YAML
To backup MariaDB or MySQL databases, mysqldump is needed.
Manager
OS: Linux or MacOS
To send reports a mail transfer agent like Exim or Postfix is needed.
Deployment
Download the project and place it somewhere on your server. Adjust the configuration file for your needs and add an entry into the Cron table to execute this application periodically.
Note: A good start is to enable the debugging mode in configuration and run the backup manually to ensure everything works fine.
0 4 * * * php /srv/backup/cli.php /srv/backup.yml >> /var/log/backup.log 2>&1
In this example the backup runs every night at 4am.
Update
Please note the changelog to check for configuration changes before updating.
Docker
Backup is also available as Docker image. See Docker Hub.
Build with
Authors
License
This project is licensed under the MIT - see LICENSE.md file for details.