

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

# Amazon 弹性容器服务执行官 AWS Toolkit for Visual Studio Code
<a name="ecs-exec"></a>

您可以使用 Amazon ECS Exec 功能在带有 AWS Toolkit for Visual Studio Code的亚马逊弹性容器服务 (Amazon ECS) 容器中发出单个命令。

**重要**  
启用和禁用 Amazon ECS Exec 会更改您 AWS 账户中资源的状态。这包括停止和重新启动服务。在 Amazon ECS Exec 处于启用状态时更改资源状态可能会导致不可预测的结果。有关 Amazon ECS 的更多信息，请参阅[使用 Amazon ECS Exec 进行调试](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html#ecs-exec-considerations)开发人员指南。

## Amazon ECS Exec 先决条件
<a name="ecs-exec-prereq"></a>

您需要满足一些先决条件才能使用 Amazon ECS Exec 功能。

### Amazon ECS 要求
<a name="w2aac17c35c10c11b5"></a>

根据您的任务是托管在 Amazon EC2 上还是 AWS Fargate，Amazon ECS Exec 有不同的版本要求。
+ 如果您使用的是 Amazon EC2，必须使用 2021 年 1 月 20 日之后发布的经 Amazon ECS 优化的 AMI，代理版本为 1.50.2 或更高。其他信息可在开发者指南 [Amazon ECS 优化](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)版中找到 AMIs。
+ 如果您使用的是 AWS Fargate，则必须使用平台版本 1.4.0 或更高版本。开发人员指南 [AWS Fargate 平台版本](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html)中提供了有关 Fargate 要求的更多信息。

### AWS 账户配置和 IAM 权限
<a name="w2aac17c35c10c11b7"></a>

要使用 Amazon ECS Exec 功能，您需要将现有的 Amazon ECS 集群与您的 AWS 账户相关联。Amazon ECS Exec 使用 Systems Manager 与集群中的容器建立连接，并且需要特定的任务 IAM 角色权限才能与 SSM 服务通信。

您可以在 [ECS Exec 所需的 IAM 权限](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html#ecs-exec-enabling-and-using)开发人员指南中找到特定于 Amazon ECS Exec 的 IAM 角色和策略信息。

## 使用 Amazon ECS Exec
<a name="w2aac17c35c10c15"></a>

您可以直接从 VS Code 工具包中的 AWS 资源管理器中启用或禁用 Amazon ECS Exec。启用 Amazon ECS Exec 后，您可以从 Amazon ECS 菜单中选择容器，然后对它们运行命令。

### 启用 Amazon ECS Exec
<a name="w2aac17c35c10c15b5"></a>

1. 在 AWS 资源管理器中，找到并展开 Amazon ECS 菜单。

1. 展开包含您要修改的服务的集群。

1. 打开服务的上下文菜单（右键单击），然后选择 **Enable Command Execution**（启用命令执行）。

**重要**  
此操作将启动服务的新部署，可能需要几分钟。有关更多信息，请参阅本部分开头的注释。

### 禁用 Amazon ECS Exec
<a name="w2aac17c35c10c15b7"></a>

1. 在 AWS 资源管理器中，找到并展开 Amazon ECS 菜单。

1. 扩展具有所需服务的集群。

1. 打开服务的上下文菜单（右键单击），然后选择 **Disable Command Execution**（禁用命令执行）。

**重要**  
此操作将启动服务的新部署，可能需要几分钟。有关更多信息，请参阅本部分开头的注释。

### 对容器运行命令
<a name="w2aac17c35c10c15b9"></a>

要使用 AWS 资源管理器对容器运行命令，必须启用 Amazon ECS Exec。如果未启用，请参阅本部分中的**启用 Amazon ECS Exec** 流程。

1. 在 AWS 资源管理器中，找到并展开 Amazon ECS 菜单。

1. 扩展具有所需服务的集群。

1. 扩展此服务以列出关联的容器。

1. 打开容器的上下文菜单（右键单击），然后选择 **Run Command in Container**（在容器中运行命令）。

1. 系统会随即将打开一个**提示**，其中包含正在运行的任务列表，请选择所需的**任务 ARN**。
**注意**  
如果该服务仅运行一个任务，则系统会自动选择该任务并跳过此步骤。

1. 出现提示时，请输入要运行的命令，然后按下 **Enter** 键以继续。