この記事はで読むことができます。
このガイドでは、Amazon ECS (Elastic Container Service) with Fargateを使用してコンテナ化されたアプリケーションを構築・デプロイする詳細な手順を説明します。
AWS構築にお困りの企業様は
お気軽にご相談ください。
1. 前提条件
- AWSアカウントを持っていること
- AWS CLIがインストールされ、設定されていること
- Dockerがインストールされていること
2. Dockerイメージの作成とプッシュ
まず、アプリケーションのDockerイメージを作成し、Amazon Elastic Container Registry (ECR) にプッシュします。
2.1 ECRリポジトリの作成
- AWSマネジメントコンソールにログインし、ECRサービスに移動します。
- 「リポジトリの作成」をクリックします。
- リポジトリ名を入力し、「作成」をクリックします。
2.2 Dockerイメージのビルドとプッシュ
ターミナルで以下のコマンドを実行します。
bash
1 2 3 4 5 6 7 8 9 10 11 |
# AWSにログイン aws ecr get-login-password --region region | docker login --username AWS --password-stdin aws_account_id.dkr.ecr.region.amazonaws.com # Dockerイメージのビルド docker build -t my-app . # イメージにタグを付ける docker tag my-app:latest aws_account_id.dkr.ecr.region.amazonaws.com/my-app:latest # イメージをプッシュ docker push aws_account_id.dkr.ecr.region.amazonaws.com/my-app:latest |
3. ECSクラスターの作成
- ECSダッシュボードに移動し、「クラスターの作成」をクリックします。
- クラスター名を入力し、「ネットワーキングのみ」テンプレートを選択します。
- 「作成」をクリックします。
4. タスク定義の作成
- ECSダッシュボードで「タスク定義」→「新しいタスク定義の作成」をクリックします。
- 「Fargate」を選択します。
- タスク定義名を入力します。
- タスクロールとタスク実行ロールを選択または作成します。
- タスクメモリとCPUを選択します。
- 「コンテナの追加」をクリックし、以下の情報を入力します:
- コンテナ名
- イメージ(ECRのイメージURI)
- ポートマッピング
- 「作成」をクリックします。
5. サービスの作成
- 作成したクラスターを選択し、「サービス」タブをクリックします。
- 「作成」をクリックします。
- 以下の情報を設定します:
- 起動タイプ:FARGATE
- タスク定義:先ほど作成したもの
- サービス名
- タスクの数
- VPCとサブネットを選択します。
- セキュリティグループを設定します。
- ロードバランサーの設定(必要な場合)を行います。
- Auto Scalingの設定(オプション)を行います。
- 「次のステップ」をクリックし、設定を確認後、「サービスの作成」をクリックします。
6. タスクの実行状況の確認
- ECSダッシュボードでクラスターを選択します。
- 「タスク」タブをクリックし、実行中のタスクを確認します。
- タスクの詳細を見るには、タスクIDをクリックします。
7. アプリケーションへのアクセス
- タスクの詳細画面で「ネットワーク」セクションを確認します。
- 「パブリックIP」または「プライベートIP」(VPC内からアクセスする場合)を使用してアプリケーションにアクセスします。
8. モニタリングとログの確認
- CloudWatchダッシュボードに移動します。
- 「ログ」→「ロググループ」で、ECSタスクのログを確認できます。
- 「メトリクス」セクションでECSのメトリクスを確認できます。
9. スケーリングの設定(オプション)
- ECSサービスの「更新」をクリックします。
- 「Auto Scaling」タブで、サービスのAuto Scalingを設定できます。
- CPU使用率やメモリ使用率に基づいてスケーリングルールを設定します。
10. クリーンアップ
作業が終わったら、不要なリソースを削除してコストを抑えましょう:
- ECSサービスを削除
- タスク定義を削除
- ECRリポジトリを削除
- CloudWatchロググループを削除
以上の手順で、ECS (Fargate) を使用してコンテナ化されたアプリケーションを構築・デプロイすることができます。各ステップを注意深く実行し、必要に応じてAWSのドキュメントを参照してください。
AWS構築にお困りの企業様は
お気軽にご相談ください。