exula/laravel-storage-rados-s3

Extends League Flysystem S3 Adapter to easily point it to a Rados Gateway

2.0.2 2022-04-21 14:34 UTC

This package is auto-updated.

Last update: 2024-04-21 18:56:43 UTC


README

#Laravel Rados Gateway S3 storage provider

This is a simple service provider that extends league/flysystem-aws-s3-v3 and allows the base_url to be set.

Primary use is for S3 compatible services like the Ceph Rados Gateway

Installation

composer require exula/laravel-storage-rados-s3

Package should be auto discovered by Laravel 5.5

OR

Register the service provider in app.php

'providers' => [
    // ...
    Exula\Ceph\CephStorageServiceProvider::class,
]

Add a new disk to your config/filesystems.php config:

'ceph' => [
           'base_url' => env('CEPH_BASE_URL', 'xxxxxxxxx'),
           'driver' => 'ceph',
           'key' => env('CEPH_ACCESS_KEY', 'xxxxxxx'),
           'credentials' => [
               'key' => env('CEPH_ACCESS_KEY', 'xxxxxxx'),
               'secret' => env('CEPH_SECRET_KEY', 'xxxxxxx'),
               ],
           'region' => '',
           'bucket' => env('CEPH_BUCKET', 'test'),
           'version' => env('CEPH_VERSION', 'latest'),
           'ACL' => env('CEPH_ACL', 'private'), //private,'public-read',
           'visibility' => env('CEPH_VISIBILITY', 'private')
       ],

Put the following lines in your .env file and fill out with your connection information

CEPH_BASE_URL=
CEPH_ACCESS_KEY=
CEPH_SECRET_KEY=
CEPH_BUCKET=
CEPH_VERSION=
CEPH_ACL=
CEPH_VISIBILITY=

Usage

Once installed this can be used as any standard Storage driver for Laravel 5.5 https://laravel.com/docs/5.5/filesystem