みなさん、こんにちは。ベトナムオフショア開発サービスを提供するスマラボ事業部のザンです。
前回に続いて、AWS初心者向けのハンズオンを共有していきたいと思いますのでぜひ読んでみて下さい。


今回のテーマは【AWSハンズオン2】PHPアプリ をAmazon ECS(AWS Fargate)にデプロイしよう です。

それでは早速進めて行きましょう!

【事前準備】

1.ハンズオンのソースコード

 以下のGithubのソースコードをダウンロードしてください。  https://github.com/phamthanhgiang/ECS-Fargate-hands-on/tree/master

2.フォルダの構成

3.Dockerfile

4.docker-compose.yml

5.task-definition.json

【ローカルの開発環境をビルド】

1.default.conf ファイルを編集

2.Build Docker

3.Access App
 http://localhost/jp/contact.html

4.Access to docker container (Debug and Hotfixの場合)

【Amazon ECS(AWS Fargate)にデプロイ】

Step 1: Login to AWS ECR

Step 2: Build image form container

Step 3: Create tag

Step 4: Push to ECR

Step 5: Create a Cluster

Step 6: Task Definitionを登録

 一番下をScrollして、JSONで構築ボタンをクリックしてください。

 task-definition.jsonの内容をコピペしてください。

 タスク名:任意

Step 7: Create a Service

 Step5で作成したClusterを選択

 Step6で作成したタスク定義を選択

Step 8: Test App
上記のタスクをクリックすると、Public IPが表示されます。

Public IPでWeb Appへアクセス

http://Public IP/jp/contact.html

メールを送信機能をテスト

完了

【AWS】Fargateのコンテナに接続する方法(DebugとHotfixの場合)

  1. ECSのタスクロール( ecsTaskExecutionRole)にIAMポリシーを付与する
    ssmmessagesの権限をすべて付与します。こちらの内容で付与を行います。

2.「enableExecuteCommand」の設定を有効にするコマンド
  Turn ON enableExecuteCommand (Turn OFF –disable-execute-command)

 

3.「aws ecs execute-command」でコンテナに接続する
 最後に「aws ecs execute-command」でコンテナに接続します。コマンドは以下の通りです 

以上です!
ここまで初心者向け【AWSハンズオン2】PHPアプリ をAmazon ECS(AWS Fargate)にデプロイしようをお読み頂きありがとうございました。
>> 関連記事【AWSハンズオン1】IAM User& Groups 

ベトナムオフショア開発ならスマラボ

ここまでお読み頂きありがとうございます。弊社は顧客満足度にこだわるIDSが提供するベトナムオフショア開発サービススマラボです^^

スマラボでは「オフショア開発セミナー」「ベトナムオフショア開発視察ツアー」を毎月開催しております♪

ベトナムという国についてもっと知りたい
現地のエンジニアとプロジェクトの開発プロセルについて確認したい
オフショア開発のリスクを理解し事前に準備したい

など、少しでも当てはまる方は下記ページもCHECKしてみてください♪

ベトナムオフショア開発視察ツアー
~ベトナムオフショア開発をリアルに理解する2日間~
初めてのベトナムでも安心-日本人サポート付き-