0. はじめに
大阪のLaravel初学者サウナーこと、kazumakishimoto(@kazuma_dev)です!
Laravel × AWS × CircleCI
でEC2デプロイ
する方法のまとめです。
0-1. 全体の流れ
1.CloudFormation,EC2,RDS
2.Route53
3.ACM,ELB
4.CircleCI,CodeDeploy
5.SNS,Chatbot
6.S3
7.API
8.参考
補足
Reference
0-2. 本記事の対象者
-
Laravel × AWS × CircleCI
でEC2デプロイ
したい方
0-3. 事前準備
- AWSアカウント作成済み
- リージョンはアジアパシフィック(東京)ap-northeast-1
-
grfl
やhoge
はサンプル名なので適宜変更して下さい
0-4. 本番環境
ツール | バージョン |
---|---|
OS | Amazon Linux 2 |
nginx | 1.12 |
PHP | 7.4.28 |
Laravel | 6.20.44 |
MySQL | 5.7.37 |
Composer | 1.10.26 |
Node.js | 13.14.0 |
0-5. AWS構成図
1. CloudFormation,EC2,RDS
- 【AWS】LaravelアプリをEC2デプロイ①【CloudFormation / EC2 / RDS編】
2. Route53
- 【AWS】LaravelアプリをEC2デプロイ②【Route53編】
3. ACM,ELB
- 【AWS】LaravelアプリをEC2デプロイ③【ACM / ELB編】
4. CircleCI,CodeDeploy
- 【AWS】LaravelアプリをEC2デプロイ④【CircleCI / CodeDeploy編】
5. SNS,Chatbot
- 【AWS】LaravelアプリをEC2デプロイ⑤【SNS / Chatbot編】
6. S3
- 【AWS】LaravelアプリをEC2デプロイ⑥【S3編】
7. API
- 【AWS】LaravelアプリをEC2デプロイ⑦【API編】
8. 参考
- 【AWS】お役立ちリンク集【随時更新】
補足
開発環境(FW/ツールのバージョンなど)
ツール | バージョン |
---|---|
Vue.js | 2.6.14 |
jQuery | 3.4.1 |
PHP | 7.4.1 |
Laravel | 6.20.43 |
MySQL | 5.7.36 |
Nginx | 1.18.0 |
Composer | 2.0.14 |
npm | 6.14.6 |
Git | 2.33.1 |
Docker | 20.10.11 |
docker-compose | v2.2.1 |
PHPUnit | 8.0 |
CircleCI | 2.1 |
heroku | 7.59.4 |
MacBook Air | M1,2020 |
macOS | Monterey 12.3 |
Homebrew | 3.3.8 |
ディレクトリ構造
【ルートディレクトリ】
├─ .circleci
│ └─ config.yml
├─ aws / CloudFormation
│ └─ ec2.yml
├─ docker
│ └─ mysql
│ └─ nginx
│ └─ php
│ └─ phpmyadmin
├─ src
│ └─ 【Laravelのパッケージ】
└─ docker-compose.yml
Reference