

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 步骤 3：使用 CodeDeploy 控制台部署应用程序
<a name="tutorial-ecs-deployment-deploy"></a>

 在本节中，您将创建一个 CodeDeploy 应用程序和部署组，以便将更新的应用程序部署到 Amazon ECS 中。在部署期间，将应用程序的生产流量 CodeDeploy 转移到新的替换任务集中的新版本。要完成此步骤，您需要以下各项：
+  Amazon ECS 集群名称。
+  Amazon ECS 服务名称。
+  应用程序负载均衡器名称。
+  生产侦听器端口。
+  目标组名称。
+  您创建的 S3 存储桶的名称。

**创建 CodeDeploy 应用程序**

1. 登录 AWS 管理控制台 并打开 CodeDeploy 控制台，网址为[https://console.aws.amazon.com/codedeploy/](https://console.aws.amazon.com/codedeploy/)。

1. 选择**创建应用程序**。

1. 在 **Application name（应用程序名称）**中，输入 **ecs-demo-codedeploy-app**。

1. 在 **Compute platform（计算平台）**中，选择 **Amazon ECS**。

1. 选择**创建应用程序**。

**创建 CodeDeploy 部署组**

1. 在应用程序页面的 **Deployment groups（部署组）**选项卡上，选择 **Create deployment group（创建部署组）**。

1. 在 **Deployment group name（部署组名称）**中，输入 **ecs-demo-dg**。

1. 在**服务角色**中，选择一个授予 CodeDeploy 对 Amazon ECS 访问权限的服务角色。有关更多信息，请参阅 [的身份和访问管理 AWS CodeDeploy](security-iam.md)。

1. 在**环境配置**中，选择 Amazon ECS 集群名称和服务名称。

1. 从**负载均衡器**中，选择将流量提供给 Amazon ECS 服务的负载均衡器的名称。

1. 在**生产侦听器端口**中，选择将生产流量提供给 Amazon ECS 服务的侦听器的端口和协议（例如，**HTTP: 80**）。本教程不包括可选的测试侦听器，因此请勿从 **Test listener port（测试侦听器端口）**中选择端口。

1. 从 **Target group 1 name（目标组 1 名称）**和 **Target group 2 name（目标组 2 名称）**中，选择两个不同的目标组以在部署期间路由流量。请确保它们是您为负载均衡器创建的目标组。哪个用于目标组 1 和哪个用于目标组 2 并不重要。

1. 选择 **Reroute traffic immediately（立即重新路由流量）**。

1. 对于 **Original revision termination（原始修订终止）**，选择 0 天、0 小时和 5 分钟。与使用默认值（1 小时）相比，这可以让您更快地完成部署。  
![\[CodeDeploy 控制台的环境配置部分。\]](http://docs.aws.amazon.com/zh_cn/codedeploy/latest/userguide/images/ecs-demo-create-acd-dg.png)

1. 选择 **Create deployment group（创建部署组）**。

**部署您的 Amazon ECS 应用程序**

1. 从部署组控制台页面中，选择 **Create deployment（创建部署）**。

1.  对于**部署组**，选择**ecs-demo-dg**。

1.  对于 **Revision type（修订类型）**，选择 **My application is stored in Amazon S3（我的应用程序存储在 Amazon S3 中）**。在 **Revision location（修订位置）**中，输入 S3 存储桶的名称。

1.  对于 **Revision file type（修订文件类型）**，根据情况选择 **.json** 或 **.yaml**。

1.  （可选）在 **Deployment description（部署描述）**框中，为部署输入描述。

1. 选择 **Create deployment（创建部署）**。

1.  您可以在 **Deployment status（部署状态）**中监控部署。在生产流量已全部路由至替换任务集并等待五分钟之后，您可以选择**终止原始任务集**，以立即终止原始任务集。如果未选择 **Terminate original task set（终止原始任务集）**，则原始任务集将在您指定的五分钟等待时间到期后终止。  
![\[CodeDeploy 控制台的部署状态部分。\]](http://docs.aws.amazon.com/zh_cn/codedeploy/latest/userguide/images/ecs-tutorial-deployment-status-without-test-listener.png)