みなさん、こんにちは。ベトナムオフショア開発サービスを提供するスマラボ事業部のザンです。
前回に続いて、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)にデプロイしようをお伝えさせて頂きました^^

記事の最後まで読んでいただきありがとうございます。次の記事でお会いしましょう♪

ここまでお読みいただきありがとうございました。弊社は日本企業に特化したベトナムオフショア開発サービスを提供するスマラボです!

スマラボでは定期的にウェビナーを開催しております。

次回の開催はリアルセミナーを5月12日に開催します^^/
4月にベトナム出張で入手したベトナムの最新経済動向やエンジニア動向を踏まえながら、オフショア開発の最新情報、失敗しないオフショア開発のポイントについてご紹介すると共に、リアルセミナーならではのパネルディスカッションや質疑応答の時間を充実させ、皆さまのご不安やお悩みをその場で解決していきます。 ぜひ、下記URLより皆様からのお申し込みをお待ちしております!

>> 【30名様限定】☆参加特典有☆4月にベトナム出張を終えたばかりの2人が語る『リアルセミナーでしか聞けない、ベトナムオフショア開発の2022年最新情報』を5月12日(火)に開催いたします

その他、最新情報はtwitter及びコラムで発信していきますのでぜひこちらもご覧ください♪