Laravel Forgeを使ってAWSのサーバー構築を15分で終わらせる

Laravel Forgeを使ってAWSのサーバー構築を15分で終わらせる:

業務でAWSに本番サーバーを立てる必要があり、サクッと環境構築+デプロイできる都合の良いツールはないかなぁと探していたら、ありました。

ありましたと言っても、公式で紹介されているんですけどねw(※有料です)

Forgeによるデプロイ
https://readouble.com/laravel/5.7/ja/deployment.html


環境構築に時間をかけるのはやめよう!

AWSでのサーバー構築に慣れていない場合、VPC作成〜EC2インスタンス作成〜必要なモジュールのインストール、等々で1時間以上かかってしまうこともあります。ところが、Forgeだと最低限の設定であれば15分程度で済ませることができてしまうんですよね。インフラ初心者でもAWSのややこしいコンソールはほとんど見る必要がなくなります。(とはいえ、業務レベルになるとAWSの知識や設定方法の理解は必要になりますが。。)


設定手順

AWSのアカウントを取得していることを前提で話を進めます。


事前準備


IAMの設定

AWSのIAMから「ユーザーを追加」から、「AmazonEC2FullAccess」にチェック✓を入れ、IAMユーザーを作成します。

アクセスキーIDとシークレットアクセスキーは、Forgeで使います!



スクリーンショット 2019-02-05 12.49.16.png

スクリーンショット 2019-02-05 12.50.33.png



Forgeの設定


サインアップ

https://forge.laravel.com/

必要な項目を記入し、登録します。


スクリーンショット 2019-02-09 12.02.37.png



APIキーの登録

Forgeにログインすると、画面の下の方にサービスを選択する箇所があるので、AWSを選択します。先程確認したIAMのアクセスキーIDとシークレットアクセスキーを入力し、Connectをクリックしましょう。

画面上部に Great! Now let's connect to a source control and server provider so we can create servers! と表示されれば成功です!

(うまくいかない場合は、IAMの設定もしくはキーの入力間違いがないかを確認してみてください)


スクリーンショット 2019-02-05 12.50.58.png



Service Providersの登録

Forgeの右上のメニューから、MyAccountを選択し管理画面へ移動します。

Service ProviderからAmazonを選択し、Profile NameとIAMのアクセスキーIDとシークレットアクセスキーを入力しましょう。

(Profile Nameは自分が分かれば何でも構いません。後からでも変更は可能です!)


スクリーンショット 2019-02-05 12.59.39.png



EC2インスタンスの作成

さて、Forgeの初期設定が終わったら、いよいよサーバーを立てていきます!

Forge画面トップのCreate ServerからAWSを選択しましょう。

(Connectが完了しているのにCreate Serverが表示されない場合は、画面上部にお知らせが表示されていると思うので「Skip For Now」を選択)

Credentials: Server Providersで登録したProfile Name
Name: サーバー名(EC2のインスタンス名)
Region: リージョンを選択(分からなければTokyoを選択)
Server Size: お財布と相談してください。
VPC: 新規に作成する場合は、Create New。既存のVPCに作成したい場合は、それを選択してください。

   (VPC作成済なのに表示されない場合は、Regionが間違っている可能性があります)
VPC Name: 作成するVPC名(既存のVPCに作成する場合は、サブネットが選択できるようになります)
PHP Version: インストールするPHPのバージョン
Post-Provision Recipe: インストール後に起動するスクリプト(今回は作成していません)
Database: 作成するデータベース(作成しない場合はNoneを選択)
Database Name: データベース名
Provision As Load Balancer: ロードバランサーとして作成する場合はチェック✓。今回はしない。

入力できたら、Create Serverをクリックします。

すると、インスタンスが作成されPHPやNginx等Laravelに必要なものがサーバーにインストールされます。

インスタンスの作成には10分程かかるので、のんびり待ちましょう!

インスタンスの作成が完了したら、サーバーのSudoパスワードとデータベースのパスワードが記載されたメールが届きます。



スクリーンショット 2019-02-05 14.03.32.png



構築完了!

Connectionの矢印をクリックし、接続できていればSuccessfulが表示されます。
スクリーンショット 2019-02-05 14.20.11.png


デプロイ

今回は、Githubを使います。

上部メニューのSitesからdefaultをクリックすると、Git Repositoryが選択できます。


スクリーンショット 2019-02-05 14.35.33.png



リポジトリのインストール

記載されているサーバーの公開鍵を、Githubの指定のリポジトリに設定します。

リポジトリのアドレスとブランチを設定すれば、Install Repositoryをクリックし、インストールが終わるのを待ちましょう!


スクリーンショット 2019-02-05 14.37.02.png



デプロイする

インストールが完了すれば、右上のDeploy Nowをクリックするのみです!


スクリーンショット 2019-02-09 14.10.46.png


以上で最低限の設定は完了です!

これでアプリケーションの開発に集中できますね!


参考

php開発環境の管理に超便利なLaravel Forgeの始め方 (上)
https://qiita.com/MasaGon/items/ab75001477192ecd51b5

Laracasts - EPISODE 3 Your First Project
https://laracasts.com/series/learn-laravel-forge/episodes/3

コメント

このブログの人気の投稿

投稿時間:2021-06-17 05:05:34 RSSフィード2021-06-17 05:00 分まとめ(1274件)

投稿時間:2021-06-20 02:06:12 RSSフィード2021-06-20 02:00 分まとめ(3871件)

投稿時間:2020-12-01 09:41:49 RSSフィード2020-12-01 09:00 分まとめ(69件)