

 AWS Cloud9 不再向新客户提供。 AWS Cloud9 的现有客户可以继续正常使用这项服务。[了解详情](https://aws.amazon.com/blogs/devops/how-to-migrate-from-aws-cloud9-to-aws-ide-toolkits-or-aws-cloudshell/)

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

# Amazon ECS Exec AWS 工具包中的适用于 AWS Cloud9
<a name="ecs-cloud9-exec"></a>

您可以使用工具包在亚马逊弹性容器服务 (Amazon ECS) 容器 AWS 中发出单个命令。 AWS Cloud9您可以使用 Amazon ECS Exec 功能完成此操作。

**重要**  
启用和禁用 Amazon ECS Exec 会更改您的 AWS 账户中 ECS 资源的状态。更改包括停止和重新启动服务。此外，在 Amazon ECS Exec 处于启用状态时更改资源状态可能会导致不可预测的结果。有关 Amazon ECS 的更多信息，请参阅《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="ecs-requirements"></a>

取决于您的任务是托管在 Amazon EC2 上还是 AWS Fargate，而且 Amazon ECS Exec 有不同的版本要求。
+ 如果您使用 Amazon EC2，必须使用 2021 年 1 月 20 日之后发布的经 Amazon ECS 优化的 AMI，代理版本为 1.50.2 或更高。有关更多信息，请参阅《[亚马逊 ECS 开发人员指南》 AMIs中经过优化的](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html)*亚马逊 ECS*。
+ 如果使用 AWS Fargate，则必须使用平台版本 1.4.0 或更高版本。有关更多信息，请参阅《Amazon ECS 开发人员指南》中的 [AWS Fargate 平台版本](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/Welcome.html)。

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

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

有关特定于 Amazon ECS Exec 的 IAM 角色和策略的信息，请参阅《Amazon ECS 开发人员指南》中的 [ECS Exec 所需的 IAM 权限](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html#ecs-exec-enabling-and-using)。

## 使用 Amazon ECS Exec
<a name="working-with-ecs-exec"></a>

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

### 启用 Amazon ECS Exec
<a name="enabling-exec"></a>

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

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

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

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

### 禁用 Amazon ECS Exec
<a name="disabling-ecs-exec"></a>

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

1. 展开包含所需服务的集群。

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

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

### 对容器运行命令
<a name="run-commands-container"></a>

要使用 AWS 资源管理器对容器运行命令，必须启用 Amazon ECS Exec。如果未启用，请参阅本节中的 [启用 Amazon ECS Exec](#enabling-exec) 步骤。

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

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

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

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

1. 将打开一个**提示符**，其中包含正在运行的任务列表。选择您想要的**任务 ARN**。
**注意**  
如果只有一个任务在运行，则不会打开提示符，而是自动选择该任务。

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