설치

  1. flysystem 용 s3 minio 드라이버를 설치합니다.

    composer require coraxster/flysystem-aws-s3-v3-minio
    CODE
  2. MinIO 용 ServiceProvider 를 app/Providers/MinIOStorageServiceProvider.php 에 만듭니다.

  3. config/app.php 의 프로바이더 항목에 작성한 Provider 를 등록합니다.

    App\Providers\MinIOStorageServiceProvider::class
    CODE
  4. config/filesystems.php 에 작성한 프로바이더를 등록합니다.

    'disks' => [
        // other disks
    
        'minio' => [
            'driver' => 'minio',
            'key' => env('MINIO_KEY', 'your minio server key'),
            'secret' => env('MINIO_SECRET', 'your minio server secret'),
            'region' => 'us-east-1',
            'bucket' => env('MINIO_BUCKET','your minio bucket name'),
            'endpoint' => env('MINIO_ENDPOINT','http://localhost:9000')
        ]
    
      ]
    CODE


  5. php artisan tinker 로 팅커 콘솔을 띄우거나 예제 코드를 돌려서 정상 동작 여부를 확인합니다.

    Storage::disk('minio')->put('avatars/1', $fileContents);
    CODE

minio 에 저장한 객체를 URL 로 바로 접근하려면 버킷 policy 를 public 으로 설정해야 합니다.

$ mc policy set public localminio/mybucket
CODE


같이 보기

Ref