LoginSignup
0
0

More than 3 years have passed since last update.

S3 に view ファイルをアップロード ( Severless Framework x Laravel )

Last updated at Posted at 2020-06-27

はじめに

この記事に書かれているのは、AWS コンソールで、IAM と S3 bucket を作成した後の手順なので、それ以前の設定はご自身でご自由にしてください。

1. .env を編集

ASSET_URL=https://[S3 のバケット名].s3-ap-northeast-1.amazonaws.com


AWS_ACCESS_KEY_ID=XXXXXXXXXXXXX
AWS_SECRET_ACCESS_KEY=XXXXXXXXXXXXX
AWS_DEFAULT_REGION=ap-northeast-1
AWS_BUCKET= S3 のバケット名

2. Serverless Framework にプラグインインストール

$ sls plugin install -n serverless-s3-sync

3. serverless.yml への記述

plugins:
   - ./vendor/bref/bref
   - serverless-domain-manager
+  - serverless-s3-sync

 custom:
+  s3Sync:
+    # A simple configuration for copying static assets
+    - bucketName: ${self:service.name}-${opt:stage, self:provider.stage}-asset
+      localDir: public # required

+resources:
+  Resources:
+    StaticContentS3:
+      Type: AWS::S3::Bucket
+      Properties:
+        BucketName: ${self:service.name}-${opt:stage, self:provider.stage}-asset

4. s3 と laravel を連携させるパッケージをインストール

$ composer require league/flysystem-aws-s3-v3

これで
Illuminate\Support\Facades\Storage::disk('s3')
で使うことができます。

おわりに

Serverless Framework と laravel での開発にも慣れてきて、記事もまあそれとなく書けるようになってきましたが、まだまだ理解浅いと感じているので、間違いや、不足している部分などありましたら、どんどんコメントしてください!

こちらの記事も読んでみてください。

S3 に アップロードした view ファイルの URL を一時的なものにする。( Severless Framework x Laravel )
https://qiita.com/soma_sekimoto/items/bd16bbc6c2b650af79f9

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0