Monday, November 18, 2024
Google search engine
HomeLanguagesLaravel 8 Backup Store On DropBOX Tutorial

Laravel 8 Backup Store On DropBOX Tutorial

Laravel 8 store backup on Dropbox example. In this tutorial, you will learn how to integrate dropbox in laravel 8 app for store backup on it.

Dropbox integration is easy in Laravel 8 app using spatie/laravel-backup package.

How to Store Backup On Dropbox In Laravel 8

Use the following steps to save laravel 6, 7, 8 application backup on dropbox storage:

  • Step 1 – Get Access Token From Dropbox
  • Step 2 – Install Laravel 8 App
  • Step 3 – Connecting App to Database
  • Step 4 – Install spatie/laravel-backup
  • Step 5 – Setup Dropbox as Filesystem in Laravel
  • Step 6 – Configure Dropbox Details
  • Step 7 – Execute Backup Command

Step 1 – Get Access Token From Dropbox

Visit Dropbox Console. And create a new project as following in below picture:

Now, fill in the form and click “Generate” button to generate an access token.

Now, you have got Access token from dropbox. Please save it in any text file. Because you need to update these values in the .env file of your laravel 8 app.

Step 2 – Install Laravel 8 App

In this step, open your terminal and navigate to local web server directory. Then type the following command on terminal to download laravel 8 app:

composer create-project --prefer-dist laravel/laravel Blog

Step 3 – Connecting App to Database

In this step, navigate to root directory of download laravel app. And open .env file. Then configure database details like following:

 DB_CONNECTION=mysql 
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=here your database name here
DB_USERNAME=here database username here
DB_PASSWORD=here database password here

Step 4 – Install spatie/laravel-backup

In this step, execute the following command on terminal to install spatie/laravel-backup package in laravel 8 app:

composer require spatie/laravel-backup

Then execute the following command on terminal to publish this installed package:

php artisan vendor:publish --provider="Spatie\Backup\BackupServiceProvider"

Note that, it will publish the configuration file in config/backup.php. Now, configure your backup according to your requirement.

Now, you need to add dropbox details in the disk option in the config/backup.php.

<?php
   
return [
   
    // ...

    'destination' => [
  
        // ...

        /*
         * The disk names on which the backups will be stored.
         */
        'disks' => [
            'dropbox',
        ],

Step 5 – Setup Dropbox as Filesystem in Laravel

In this step, you need to execute the following command on terminal to install a Filesystem adapter for Dropbox. So, run the following command in your terminal:

composer require spatie/flysystem-dropbox
php artisan make:provider DropboxServiceProvider

Then, inside the boot() method add the Dropbox for the Laravel filesystem:

<?php
 
namespace App\Providers;
 
use Storage;
use League\Flysystem\Filesystem;
use Illuminate\Support\ServiceProvider;
use Spatie\Dropbox\Client as DropboxClient;
use Spatie\FlysystemDropbox\DropboxAdapter;
 
class DropboxServiceProvider extends ServiceProvider
{
    // ...
    public function boot()
    {
        Storage::extend('dropbox', function ($app, $config) {
            $client = new DropboxClient(
                $config['authorization_token']
            );
 
            return new Filesystem(new DropboxAdapter($client));
        });
    }
}

After this, register the service provider by adding the following line in the providers array of config/app.php.

'providers' => [
    // ...
    App\Providers\DropboxDriveServiceProvider::class,
];

Step 6 – Configure Dropbox Details

In this step, configure Dropbox app with this laravel app. So, open your laravel 8 project in any text editor. Then navigate the config directory and open filesystem.php file and add the client id, secret and callback url:

<?php
   
return [
   
    // ...
   
    'disks' => [
   
        // ...
   
        'dropbox' => [
            'driver' => 'dropbox',
            'authorization_token' => env('DROPBOX_AUTH_TOKEN'),
        ],
   
    ],
];

And also you need to update .env file of laravel 8 app. In this environment file you need to add the following Dropbox auth token:

DROPBOX_AUTH_TOKEN=<your token>

Step 7 – Execute Backup Command

In this step, open your terminal and execute the following command to check the backup file is created or not:

php artisan backup:run

Conclusion

Laravel 8 store backup on dropbox example tutorial, you have learned how to store laravel 8 app backup on dropbox using spatie/laravel-backup.

Recommended Laravel Posts

RELATED ARTICLES

Most Popular

Recent Comments