Microsoft Azure Blob Storage integration for Laravel's Storage API
Switch branches/tags
Nothing to show
Clone or download

README.md

laravel-azure-storage

Build Status

Microsoft Azure Blob Storage integration for Laravel's Storage API

Installation

Install the package using composer:

composer require matthewbdaly/laravel-azure-storage

On Laravel versions before 5.5 you also need to add the service provider to config/app.php manually:

    Matthewbdaly\LaravelAzureStorage\AzureStorageServiceProvider::class,

Then add this to the disks section of config/filesystems.php:

        'azure' => [
            'driver'    => 'azure',
            'name'      => env('AZURE_STORAGE_NAME'),
            'key'       => env('AZURE_STORAGE_KEY'),
            'container' => env('AZURE_STORAGE_CONTAINER'),
        ],

Finally, add the fields AZURE_STORAGE_NAME, AZURE_STORAGE_KEY and AZURE_STORAGE_CONTAINER to your .env file with the appropriate credentials. Then you can set the azure driver as either your default or cloud driver and use it to fetch and retrieve files as usual.

Constructing a URL

This driver doesn't support the Storage::url($path) method, and adding support as a third-party package doesn't appear to be practical. However, you can construct a URL to retrieve the asset as follows:

$url = 'https://' . config('filesystems.disks.azure.name'). '.blob.core.windows.net/' . config('filesystems.disks.azure.container') . '/' . $filename;

You may want to create a helper function for this.