背景
Laravelで作成したポートフォリオのAWSデプロイに苦労していた時、MENTAにて@adachin0817さんよりお声がけいただき、インフラ構築のフォローをしていただきました。
以下のプランよりフォローしていただきました。
構築過程
まず最初に開発環境構築に使用すたDockerの設定があまりよろしくなかったので、
開発環境の再構築から始めました。
(本番環境と設定を合わせる目的もあります)
開発環境
開発環境にはDockerを使用しています
- Docker 20.10.12
-
Docker Compose v2.2.3
-
Docker image
-
laravel-app(appコンテナ)
- php7.4-fpm-alpine(nginx,php-fpm,supervisor)
- Laravel 6.20.34
-
laravel-db(mysqlコンテナ)
- MySQL 8.0.27
-
laravel-app(appコンテナ)
-
Docker image
以下構成図です。
具体的な構成、構築内容は以下の記事にまとめました。
【Docker+Laravel6】開発環境構築についてまとめてみました
本番環境
本番環境はAWSを使用し、CircleCIで自動デプロイを可能にしています
-
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デプロイ結果通知
以下構成図です。
具体的な構成、構築内容は以下の記事にまとめました。
【AWS+Laravel】本番環境構築についてまとめてみました
身についたこと
- Docker, AWSのインフラの構造とCircleCIの設定・操作の理解
- 構成を理解し構成図として表記できる能力
- 公式ドキュメントを軸に、あらゆる記事を読み、最適な実装方法を導き出せる能力
- 自走力
実装中に意識したこと
- 後で見返してもわかりやすいように、タグや説明をその都度付け加える。
- 各サービス同士の繋がりを意識しながら構築していく。
- とにかく諦めないこと。
振り返り
ちょうど1ヶ月でのデプロイ完了でした。技術力のみならず質問力も鍛えられました。
まだまだ理解不足なところもあるので、普段の学習と実務経験で、もっと対応できる幅を広げていきたいです。
最後に
@adachin0817さんのMENTAプランについて紹介します。
初学者が一番悩むであろう構築までのロードマップを速攻で作っていただき、構築完成まで手厚いサポートをしていただきました。
とにかく質問への回答が早く、問題を素早く解決できます。
また、実務レベルのフォローで、メンティー自身が解決までたどり着けるよう導いてくださるので、自走力爆上がりすると思います!
初学者にとっては決して甘くはないですが、インフラの知識のみならずエンジニアとしての心得を学ぶにおいて、@adachin0817さんのサポートは最高です。
おすすめです!!