nyoncode/laravel-backup-manager

nyoncode/laravel-backup-manager

Powerful and extensible backup manager for Laravel applications: databases, files, encryption, integrity manifests and multi-destination storage.

0
Packagist stažení
0
Verzí
1.1.1
Aktuální verze
Závislosti
php ^8.3 ext-json * ext-openssl * illuminate/bus ^12.0|^13.0 illuminate/console ^12.0|^13.0 illuminate/contracts ^12.0|^13.0 illuminate/database ^12.0|^13.0 illuminate/filesystem ^12.0|^13.0 illuminate/queue ^12.0|^13.0 illuminate/support ^12.0|^13.0 nyoncode/laravel-package-toolkit ^2.1.1 symfony/finder ^7.0 symfony/process ^7.0

Backup Manager — Documentation

Welcome to the Backup Manager documentation. New here? Follow the Getting started tutorial — it takes you from nothing to a verified, restorable backup in about ten minutes. After that, the pages below are your reference.

Contents

  1. Getting started — a from-scratch tutorial
  2. Installation
  3. Configuration
  4. Databases
  5. Files
  6. Storage destinations
  7. Security & the manifest
  8. Restore
  9. Retention
  10. Incremental & deduplicated backups
  11. Scheduling & monitoring
  12. CLI reference
  13. Extending the package
  14. Pro & the UI dashboard

Open-core. This package is the free MIT core. Incremental backups, GFS retention, HMAC signing, monitoring and the web dashboard are commercial add-ons — see Pro & the UI dashboard. Pro-only sections in these docs are marked with a Pro callout.

Concepts in one minute

  • A profile is a named backup definition (what to back up, where to store it). You can have many; the default profile is used when none is given.
  • A backup is a single compressed, optionally encrypted TAR archive plus a JSON manifest sidecar.
  • A destination is a Laravel filesystem disk. A profile can write to several at once.
  • Retention decides which historical backups to keep; restore brings a backup back, always after verifying its integrity against the manifest.

Design philosophy

The package favours composition over inheritance. Every capability lives behind a small interface (DatabaseDumper, Compressor, Encryptor, Signer, Archiver, BackupRepository, RetentionStrategy, BackupStage) with a focused implementation, wired together with dependency injection. This makes each part independently testable and easy to replace — and makes building a UI layer on top straightforward, which is an explicit goal of this package.