marcandreappel/laravel-backblaze-b2

Backblaze B2 Cloud Storage for PHP8+ & Laravel 8+

2.0.2 2022-10-11 08:31 UTC

This package is auto-updated.

Last update: 2024-12-11 13:01:09 UTC


README

Author Latest Version on Packagist Software License Total Downloads

Description

This package allows Laravel 9 to use Backblaze B2 buckets as filesystem. It uses the Backblaze B2 SDK and the Backblaze Flysystem Adapter to communicate with the API.

Installation

For Laravel v9 and beyond, install it with Composer:

composer require marcandreappel/laravel-backblaze-b2

For legacy Laravel (v6 to v8):

composer require "marcandreappel/laravel-backblaze-b2:^1.4"

Configuration

In your config/app.php, add to the list of service providers:

\MarcAndreAppel\BackblazeB2\BackblazeB2ServiceProvider::class,

In your config/filesystems.php add under disks the driver:

        'b2' => [
            'driver'         => 'b2',
            'accountId'      => env('B2_APPLICATION_KEY_ID'),
            'applicationKey' => env('B2_APPLICATION_KEY_SECRET'),
            'bucketName'     => env('B2_BUCKET_NAME'),
            'bucketId'       => env('B2_BUCKET_ID', ''),
        ],

Using ApplicationKey instead of MasterKey

Visit your Backblaze B2 dashboard and get your account id and application key.

If you specify only the $bucketName when creating the BackblazeAdapter, your $applicationKey must be the master key.
However, if you specify both bucket name and bucket id, you can use an application key. Fetch your $bucketId using the b2 command line tool b2 get-bucket <bucketName>.

Usage

Use it directly with the Storage facade.

\Storage::disk('b2')->put('filename.txt', 'My important content');
\Storage::disk('b2')->get('filename.txt')

Security

If you discover any security related issues, please use the issue tracker.

Credits

License

The MIT License (MIT). Please read the license file for more information.