翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon Elastic Contain Service CodeDeploy ブルー/グリーン
AWS CodePipeline で、Blue/Green デプロイを使用してコンテナアプリケーションをデプロイするパイプラインを構成します。Blue/Green デプロイでは、古いバージョンと一緒に新しいバージョンのアプリケーションを起動し、トラフィックを再ルーティングする前に新しいバージョンをテストできます。また、デプロイプロセスをモニタリングし、問題がある場合は迅速にロールバックすることもできます。
完成したパイプラインは、イメージまたはタスク定義ファイルの変更を検出し、 CodeDeploy Amazon ECS クラスターとロードバランサーにトラフィックをルーティングしてデプロイします。 CodeDeploy 特別なポートを介して新しいタスクをターゲットにできる新しいリスナーをロードバランサーに作成します。たとえば、ソースロケーションを使用するようにパイプラインを設定することもできます。 CodeCommit リポジトリ。Amazon ECS タスク定義が保存されています。
パイプラインを作成する前に、Amazon ECS リソースをすでに作成しておく必要があります。 CodeDeploy リソース、ロードバランサーとターゲットグループ。イメージリポジトリにイメージにタグを付けて保存し、タスク定義とタスク定義をアップロードしておく必要があります。 AppSpec ファイルをファイルリポジトリに保存します。
このトピックでは、以下の Amazon ECS について説明します。 CodeDeploy CodePipeline の Blue/Green デプロイアクション。CodePipeline での Amazon ECS 標準デプロイアクションの詳細については、「Amazon Elastic Container Service」を参照してください。
アクションタイプ
-
カテゴリ:
Deploy
-
所有者:
AWS
-
プロバイダー:
CodeDeployToECS
-
バージョン:
1
設定パラメータ
- ApplicationName
-
必須: はい
CodeDeploy 内のアプリケーションの名前。パイプラインを作成する前に、CodeDeploy でアプリケーションをすでに作成しておく必要があります。
- DeploymentGroupName
-
必須: はい
用に作成した Amazon ECS タスクセットに指定されているデプロイグループ。 CodeDeploy アプリケーションをデプロイします。パイプラインを作成する前に、CodeDeploy でデプロイグループをすでに作成しておく必要があります。
- TaskDefinitionTemplateArtifact
-
必須: はい
デプロイアクションにタスク定義ファイルを提供する入力アーティファクトの名前。これは通常、ソースアクションからの出力アーティファクトの名前です。コンソールを使用する場合、ソースアクションの出力アーティファクトのデフォルト名は
SourceArtifact
になります。 - AppSpectemplateArtifact
-
必須: はい
提供する入力アーティファクトの名前。 AppSpec ファイルをデプロイアクションに追加します。これは通常、ソースアクションからの出力アーティファクトの名前です。コンソールを使用する場合、ソースアクションの出力アーティファクトのデフォルト名は
SourceArtifact
になります。 - AppSpecTemplatePath
-
必須: いいえ
ファイルの名前。 AppSpec パイプラインのソースファイルのロケーションに保存されているファイル (パイプラインのなど)。 CodeCommit repository. デフォルトのファイル名は
appspec.yaml
です。もし、 AppSpec ファイルは同じ名前で、ファイルリポジトリのルートレベルに保存されているため、ファイル名を指定する必要はありません。パスがデフォルトでない場合は、パスとファイル名を入力します。 - TaskDefinitionTemplatePath
-
必須: いいえ
パイプラインファイルのソースロケーションに保存されているタスク定義のファイル名 (たとえば、パイプラインのファイル名)。 CodeCommit repository. デフォルトのファイル名は
taskdef.json
です。タスク定義ファイルが同じ名前で、ファイルリポジトリのルートレベルに保存されている場合は、ファイル名を指定する必要はありません。パスがデフォルトでない場合は、パスとファイル名を入力します。 - イメージ<Number>ArtifactName
-
必須: いいえ
デプロイアクションにイメージを提供する入力アーティファクトの名前。これは一般に、Amazon ECR ソースアクションからの出力など、イメージリポジトリの出力アーティファクトです。
<Number>
に指定できる値は 1 から 4 までです。 - イメージ<Number>ContainerName
-
必須: いいえ
Amazon ECR ソースリポジトリなど、イメージリポジトリから使用可能なイメージの名前。
<Number>
に指定できる値は 1 から 4 までです。
入力アーティファクト
-
アーティファクトの数:
1 to 5
-
説明: -
CodeDeployToECS
アクションは、まずタスク定義ファイルと AppSpec ファイルをソースファイルリポジトリに格納し、次にイメージリポジトリ内のイメージを検索し、 AppSpec タスクセットとコンテナをクラスタにデプロイするコマンド。CodeDeployToECS
アクションは、イメージ URI をイメージにマップするimageDetail.json
ファイルを検索します。Amazon ECR イメージリポジトリへの変更をコミットすると、ECR ソースアクションのパイプラインはそのコミット用にimageDetail.json
ファイルを作成します。アクションが自動化されていないパイプラインの場合、手動でimageDetail.json
ファイルを追加することもできます。imageDetail.json
ファイルの詳細については、「Amazon ECS Blue/Green デプロイアクション用の imageDetail.json ファイル」を参照してください。
出力アーティファクト
-
アーティファクトの数:
0
-
説明: 出力アーティファクトは、このアクションタイプには適用されません。
アクションの宣言
以下の資料も参照してください。
このアクションを利用する際に役立つ関連リソースは以下の通りです。
-
チュートリアル: Amazon ECR ソース、ECS-CodeDeploy 間のデプロイでパイプラインを作成する— このチュートリアルでは、 CodeDeploy Blue/Green デプロイに必要な Amazon ECS リソースです。このチュートリアルでは、Docker イメージを Amazon ECR にプッシュし、Docker イメージ名、コンテナ名、Amazon ECS サービス名、およびロードバランサーの設定を一覧表示する Amazon ECS タスク定義を作成する方法について説明します。このチュートリアルでは、 AppSpec デプロイ用のファイルとパイプライン。
注記 このトピックとチュートリアルでは、CodePipeline の CodeDeploy および ECS Blue/Green アクションについて説明します。CodePipeline の ECS 標準アクションの詳細については、「」を参照してください。チュートリアル: CodePipeline を使用した継続的なデ。
-
AWS CodeDeployユーザーガイド— Blue/Green デプロイでのロードバランサー、本稼働リスナー、ターゲットグループ、および Amazon ECS アプリケーションの使用方法については、「」を参照してください。チュートリアル: Amazon ECS サービスをデプロイします。。AWS CodeDeploy ユーザーガイド 内のリファレンスの情報では、Amazon ECS および AWS CodeDeploy を使用した Blue/Green デプロイの概要を説明します。
-
Amazon Elastic Container Service デベロッパーガイド - Docker イメージとコンテナ、ECS サービスとクラスター、および ECS タスクセットの操作については、「Amazon ECS とは」を参照してください。