Laravel Backup Panel provides a dashboard for spatie/laravel-backup package. It lets you:
It resembles the look and functionality of another Spatie package: spatie/nova-backup-tool. This was done on purpose, so users can easily migrate from one to another. Only it doesn't use polling. A "real-time" updates of a backups list isn't such a necessarily thing and an intensive polling can cause unexpected charges if you use services that require to pay per API requests, such as Google Cloud Storage. Also, some users reported about hitting a rate limit of Dropbox API.
Make sure you meet the requirements for installing spatie/laravel-backup. Since this package requires the spatie/laravel-backup version 6.11.12 or higher, it also requires PHP 7.3 and Laravel 6.0 or higher.
Just use the older version of this package, see the v1
branch.
First you must install spatie/laravel-backup into your Laravel app.
The installation instructions are here.
When successful, running php artisan backup:run
on the terminal should create a backup and php artisan backup:list
should return a list with an overview of all backup disks.
You may use composer to install Laravel Backup Panel into your project:
$ composer require pavel-mironchik/laravel-backup-panel
After installing, publish its resources using provided Artisan command:
$ php artisan laravel-backup-panel:install
This will do the following:
public/vendor/laravel_backup_panel
directoryresources/views/vendor/laravel_backup_panel
directoryconfig/laravel_backup_panel.php
app/Providers/LaravelBackupPanelServiceProvider.php
When updating the package, do not forget to re-publish resources:
$ php artisan vendor:publish --tag=laravel-backup-panel-assets --force
$ php artisan vendor:publish --tag=laravel-backup-panel-views --force
See the Wiki for the instructions how to upgrade from version 1.
You are free to tune CSS styles in the public/vendor/laravel_backup_panel
directory and change the layout in the resources/views/vendor/laravel_backup_panel
directory as you want.
Laravel Backup Panel exposes a dashboard at /backup
. Change it in config/laravel_backup_panel.php
file:
'path' => 'backup',
Sometimes you don't want to run backup jobs on the same queue as user actions and things that is more time critical.
Specify your desired queue name in config/laravel_backup_panel.php
file:
'queue' => 'dedicated_low_priority_queue',
By default, you will only be able to access the dashboard in the local
environment.
To change that, modify authorization gate in the app/Providers/LaravelBackupPanelServiceProvider.php
:
/**
* Register the Laravel Backup Panel gate.
*
* This gate determines who can access Laravel Backup Panel in non-local environments.
*
* @return void
*/
protected function gate()
{
Gate::define('viewLaravelBackupPanel', function ($user) {
return in_array($user->email, [
'admin@your-site.com',
]);
});
}
Open http://your-site/backup
. You'll see a dashboard and controls to use.
Please see CHANGELOG for more information about what has changed recently.
Please see CONTRIBUTING for details.
$ composer test
If you discover any security related issues, please email mironchikpavel@gmail.com instead of using the issue tracker.
If you like this package, consider supporting it. You can use this in such ways:
And any other help will be appreciated.
The MIT License (MIT). Please see License File for more information.