背景
Laravelを使用して開発したポートフォリオのデプロイをする目的で、AWSで本番環境を構築しました。
AWSを使用した理由は、インフラの構造をしっかりと理解したかったからと、
実務に入るとプログラミングだけではなく、サーバーやネットワークについての知識も必要だろうと考えたからです。
(CircleCIについての記事は執筆中です。)
-
開発環境構築(Docker+Laravel6)については以下にまとめました
【Docker+Laravel6メモ】開発環境構築についてまとめてみました
本番環境について
-
AWS:EC2, RDS, VPC, Route 53, ALB, ACM, S3, CloudWatch
EC2 : nginx, php-fpm
RDS : mysql 8.0.27 -
CircleCI
deploy job : git pullデプロイ自動化
slack orb : Slackデプロイ結果通知
本番環境構成図
構築ロードマップ
順番 | 手順 |
---|---|
1 | お名前.comで独自ドメイン取得する |
2 | お名前.comで取得したドメインをRoute53に登録する |
3 | VPCを作成する |
4 | セキュリティーグループを作成する |
5 | EC2インスタンスを作成する |
6 | ACMでSSL証明書を発行する |
7 | ELBを作成する |
8 | Route53でAレコードのエイリアスを作成する |
9 | RDSを作成する |
10 | EC2インスタンスにLaravel環境を構築してアプリのデプロイをする |
11 | CircleCIを使用した自動デプロイ(執筆中) |
12 | AWS S3を使用した画像アップロード(執筆中) |
構築手順(記事)
1.お名前.comで独自ドメイン取得する
2.お名前.comで取得したドメインをRoute53に登録する
3.VPCを作成する
4.セキュリティーグループを作成する
5.EC2インスタンスを作成する
6.ACMでSSL証明書を発行する
7.ELBを作成する
8.Route53でAレコードのエイリアスを作成する
9.RDSを作成する
10.EC2インスタンスにLaravel環境を構築してアプリのデプロイをする
11.CircleCIを使用した自動デプロイ(執筆中)
....
12.AWS S3を使用した画像アップロード(執筆中)
....
振り返り
今回のAWSの環境構築を通して、Webサービスがどのように運用されているのかを知るキッカケになりました。
インフラ周りの知識を理解するのに、AWSは最適だ思います!!
自分が構築した環境は、コストを考えたシンプルな構造となっているため、おそらく基本の域だと思います。
実務でも通用する技術を身につけるためには、更に深く学んでいく必要があります。
なので、これからもAWSを通じてインフラ周りの知識を磨いていこうと思います!!
難しいけど、がんばります(笑)