

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

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

# 使用其他 AWS 服务
<a name="working-with-other-services"></a>

使用时 AWS Cloud9，您可以与 Amazon Lightsail AWS CodeStar、和。 AWS CodePipeline本节中的主题如何执行此操作。

**重要**  
 AWS 工具包功能为使用关键 AWS 服务（例如 AWS Lambda、和 Amazon S3）提供了便捷的可视化界面。 AWS Serverless Application Model有关更多信息，请参阅 [使用 AWS 工具包](toolkit-welcome.md)。

**Topics**
+ [使用 Amazon Lightsail 实例](lightsail-instances.md)
+ [与 AWS CodePipeline](codepipeline-repos.md)
+ [与 CodeCatalyst](ide-toolkits-cloud9.md)
+ [与 AWS CDK](cdk-explorer.md)

# 在 IDE 中使用 Amazon Lightsail 实例 AWS Cloud9
<a name="lightsail-instances"></a>

您可以使用 AWS Cloud9 IDE 在 Amazon Lightsail 实例上处理预配置了常用应用程序和框架的代码。它们包括 WordPress、LAMP（Linux、Apache、MySQL 和 PHP）、Node.js、NGINX、Drupal 和 Joomla。包括 Linux 发行版（如 Amazon Linux、Ubuntu、Debian、FreeBSD 和 openSUSE）。

Lightsail 提供了一种方便且可快速设置的虚拟专用服务器解决方案。Lightsail 提供了计算、存储以及网络功能以及在云端部署和管理网站和 Web 应用程序的功能。您可以使用 Lightsail 以低廉、可预测的每月价格快速启动项目。有关更多信息，请参阅 [Amazon Lightsail 功能](https://amazonlightsail.com/features/)。

在本主题中，您将创建并设置一个与兼容的基于 Linux 的 Lightsail 实例。 AWS Cloud9然后，您可以创建一个 AWS Cloud9 SSH 开发环境并将其连接到 Lightsail 实例。

**注意**  
完成这些程序可能会导致向您收取费用 AWS 账户。其中包括可能的服务（如 Lightsail）费用。有关更多信息，请参阅 [Amazon Lightsail 定价](https://aws.amazon.com/lightsail/pricing/)。  
  
要使用 AWS Cloud9 IDE 处理运行 Amazon Linux 的 Amazon EC2 实例或不包含示例代码的Ubuntu服务器，请参阅[入门：基本教程](tutorials-basic.md)。
+  [步骤 1：创建基于 Linux 的 Lightsail 实例](#lightsail-instances-create) 
+  [步骤 2：设置要与之一起使用的实例 AWS Cloud9](#lightsail-instances-setup) 
+  [步骤 3：创建并连接到 AWS Cloud9 SSH 开发环境](#lightsail-instances-environment) 
+  [步骤 4：使用 AWS Cloud9 IDE 更改实例上的代码](#lightsail-instances-change-code) 

## 步骤 1：创建基于 Linux 的 Lightsail 实例
<a name="lightsail-instances-create"></a>

在该步骤中，您使用 Lightsail 控制台创建一个在基于 Linux 的发行版中运行应用程序的 Amazon EC2 实例。该实例自动包含以下各项：
+ 公有和私有 IP 地址。（您以后可以创建静态公有 IP。）
+ 通过端口 22 使用 SSH、通过端口 80 使用 HTTP 以及通过端口 443 使用 HTTPS 访问该实例的权限。（您可以更改这些设置。）
+ 数据块存储磁盘。（您以后可以附加额外的磁盘。）
+ 内置系统报告。

在 Lightsail 控制台上，您可以稍后备份、重启、停止或删除该实例。

1. 打开然后登录 Lightsail 控制台，网址为。[https://lightsail.aws.amazon.com](https://lightsail.aws.amazon.com)

   我们建议您使用您 AWS 账户中的 IAM 管理员用户的凭证登录。如果无法以 IAM 管理员用户身份登录，请与 AWS 账户 管理员联系。

1. 如果屏幕上出现提示，请在控制台中选择要使用的语言，然后选择 **Save（保存）**。

1. 如果屏幕上出现提示，请选择 **Let's get started（我们开始吧）**。

1. 在主页中，在已选择 **Instances（实例）**选项卡的情况下，选择 **Create instance（创建实例）**。  
![\[在 Lightsail 控制台中选择 Create instance（创建实例）按钮\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console-lightsail-create-instance.png)

1. 对于**实例位置**，请确保您要在其中创建实例的位置 AWS 区域 AWS Cloud9 是可用的。有关更多信息，请参阅*Amazon Web Services 一般参考* 中的 [AWS Cloud9](https://docs.aws.amazon.com/general/latest/gr/rande.html#cloud9_region)。要更改 AWS 区域、可用区或两者兼而有之，请选择**更改 AWS 区域和可用区**，然后按照屏幕上的说明进行操作。

1. 对于 **Pick a instance image（选择实例镜像）**，**Select a platform（选择平台）**中已选择了 **Linux/Unix**，并且 **Select a blueprint（选择蓝图）**中已选择了 **Apps \$1 OS（应用 \$1 操作系统）**，选择一个蓝图。  
![\[在 Lightsail 控制台中选择实例平台和蓝图\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console-lightsail-pick-instance-image.png)
**注意**  
如果要创建没有应用程序的实例，请选择 **OS Only（仅限操作系统）**而不是 **Apps \$1 OS（应用 \$1 操作系统）**，然后选择一个发行版。  
要了解可用的选项，请参阅 Lightsail 网站上的[选择 Amazon Lightsail 实例镜像](https://lightsail.aws.amazon.com/ls/docs/getting-started/article/compare-options-choose-lightsail-instance-image)。

1. 对于 **Choose your instance plan（选择实例计划）**，请选择一个计划，或保留选定的默认计划。

1. 对于 **Name your instance**（为您的实例命名），输入实例的名称，或保留建议的原定设置名称。

1. 对于实例数，请输入要创建的实例数，或保留原定设置值，即单个实例（**x 1**）。

1. 选择**创建**。

## 第 2 步：设置要与之配合使用的实例 AWS Cloud9
<a name="lightsail-instances-setup"></a>

在此步骤中，您将连接到正在运行的实例，然后对其进行设置， AWS Cloud9 以便以后使用。

**注意**  
以下说明假定您在上一步中选择了 **Apps \$1 OS（应用 \$1 操作系统）**。如果选择了 **OS Only（仅限操作系统）**和 **Ubuntu** 以外的发行版，您可能需要相应地修改以下说明。

1. 在仍打开上一步中的 Lightsail 控制台的情况下，在 **Instances（实例）**选项卡上的该实例的卡中，选择该实例的名称。  
![\[选择在 Lightsail 控制台中显示实例详细信息\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console-lightsail-show-instance-details.png)

1. 在 **Connect**（连接）选项卡上，对于 **Connect using your own SSH client**（使用您自己的 SSH 客户端连接），记下 **Public IP**（公有 IP）和 **User name**（用户名）值，因为您以后要用到它们。  
![\[在 Lightsail 控制台中显示的实例公有地址和用户名\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console-lightsail-instance-ip-user.png)

1. 选择 **Connect using SSH（使用 SSH 连接）**。

1. 确保该实例具有最新的系统更新。为此，请在显示的终端会话中运行 **`sudo apt update`** 命令。

1. 检查是否安装了 Python，如果已安装，则检查版本是否为 2.7。要检查版本，请运行 **`python --version`** 命令，并记下显示的版本号。如果未显示版本号或版本不是 2.7，请运行 **`sudo apt install -y python-minimal`** 命令以在该实例上安装 Python 2.7。

1. 检查是否安装了 Node.js，如果已安装，请检查版本是否为 0.6.16 或更高版本。要检查版本，请运行 **`node --version`** 命令，并记下显示的版本号。如果未显示版本号或版本不是 0.6.16 或更高版本，我们建议您使用 Node Version Manager（nvm）在该实例上安装 Node.js。

   为此，请按以下顺序，运行以下命令（每次运行一个）以更新该实例，在实例上安装 Node Version Manager（nvm），在实例上激活 nvm，然后在实例上安装最新版本的 Node.js。

   ```
   sudo apt update
   curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.0/install.sh | bash
   . ~/.bashrc
   nvm install node
   ```

1. 运行 **`which node`** 命令，并记下显示的值。您将在以后需要它。
**注意**  
如果命令的输出类似**`which node`**于`/usr/sbin/node`，则在该路径中 AWS Cloud9 找不到 Node.js。应转而使用 `nvm` 安装 Node.js，如本过程的上一步中所述。然后，再次运行 `which node` 命令，并记下显示的新值。

1.  [在实例上下载并运行 AWS Cloud9 安装程序](installer.md#installer-download-run)。

## 步骤 3：创建并连接到 AWS Cloud9 SSH 开发环境
<a name="lightsail-instances-environment"></a>

在此步骤中，您将使用 AWS Cloud9 控制台和实例的终端创建 SSH 环境，然后将该环境连接到正在运行的实例。

1. 从上一步开始，终端会话仍处于打开状态，登录到 AWS Cloud9 控制台，如下所示：
   + 如果您是唯一使用您的个人 AWS 账户 或者您是 IAM 用户 AWS 账户，请转到[https://console.aws.amazon.com/cloud9/](https://console.aws.amazon.com/cloud9/)。
   + 如果您的组织使用 AWS IAM Identity Center，请 AWS 账户 咨询您的管理员以获取登录说明。
**注意**  
在此步骤中，您将同时使用两个不同的 AWS 服务 方法。现在，假设您以 IAM 管理员用户身份登录到 Lightsail 控制台，但希望用另一个实体拥有新的 SSH 环境。在这种情况下，我们建议您打开不同的 Web 浏览器，然后以该实体身份登录到 AWS Cloud9 控制台。

1. 在 AWS Cloud9 控制台中 AWS 区域 ，选择与您在框架中创建的实例相匹配的。  
![\[AWS AWS Cloud9 控制台中的区域选择器\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/consolas_region_new_UX.png)

1. 如果显示欢迎页面，请在 “**新建 AWS Cloud9 环境**” 中选择 “**创建环境**”。如未显示，则选择 **Create environment（创建环境）**。  
![\[在显示欢迎页面时选择“Next step（下一步）”按钮\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/create_welcome_env_new_UX.png)

   或者：  
![\[如果未显示欢迎页面，选择 Create environment（创建环境）按钮\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console_create_env_new_UX.png)

1. 在 **Name environment**（命名环境）页面上，在 **Name**（名称）中输入环境的名称。

1. 在**描述**字段中向您的环境添加描述。

1. 对于**环境类型**，选择**现有计算**。这很重要，因为您需要选择此选项才能显示**用户**和**主机**选项。

1. 对于 **User**（用户），请输入您之前记下的 **User name**（用户名）值。

1. 对于 **Host**（主机），请输入您之前记下的 **Public IP**（公有 IP）值。

1. 对于 **Port（端口）**，请保留默认值 **22**。

1. 展开**其他详细信息**。

1. 在**环境路径**中，输入从登录后 AWS Cloud9 开始的路径，即`~/`。这是用户的主目录的根目录。

1. 对于 **Node.js binary path**（Node.js 二进制文件路径），请输入您之前记下的 **`which node`** 命令值。

1. 将 **SSH jump host（SSH 跳转主机）**保留空白。

1. 将为此环境 AWS Cloud9 创建的 SSH 公钥存储在系统剪贴板中。为此，请选择 **Copy key to clipboard（将密钥复制到剪贴板）**。
**注意**  
要查看复制的公有 SSH 密钥值，请展开 **View public SSH key（查看公有 SSH 密钥）**。

1. 将刚复制的公有 SSH 密钥值保存到实例中。为此，请使用 vi（常用文本编辑器），该编辑器已安装在实例上：

   1. 在实例的终端会话中，运行 **`vi ~/.ssh/authorized_keys`** 命令。

   1. 在显示的 vi 编辑器中，转到文件末尾，然后切换为插入模式。为此，请按 `I`，然后按 `A`。[将在 vi 编辑器底部显示 **-- INSERT --**（-- 插入 --）。]

   1. 按两次 `Enter` 以在文件末尾添加两个回车符。

   1. 将系统剪贴板内容（包含刚复制的公有 SSH 密钥值）粘贴到终端会话剪贴板中。为此，请在终端会话窗口底角选择剪贴板按钮，然后将系统剪贴板内容粘贴到框中。  
![\[打开 Lightsail 终端会话剪贴板\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/images/console-lightsail-terminal-clipboard.png)

   1. 将终端会话剪贴板内容粘贴到 vi 编辑器中。为此，请在 vi 编辑器中的插入点处按 `Ctrl + Shift + V`。

   1. 保存该文件。为此，请按 `Esc` 以进入命令模式。（**-- INSERT --（-- 插入 --）** 将从 vi 编辑器底部消失。） 键入 `:wq`（以 `write` 文件，然后 `quit` vi 编辑器），然后按 `Enter`。

1. 返回 AWS Cloud9 控制台，选择**下一步**。

1. 在 **Review choices（审核选项）**页面上，选择 **Create environment（创建环境）**。等待 AWS Cloud9 创建您的环境，然后显示该环境的 AWS Cloud9 IDE。这个过程可能需要几分钟。

 AWS Cloud9 创建环境后，它会显示该环境的 AWS Cloud9 IDE。

如果至少五分钟后仍 AWS Cloud9 未显示 IDE，则可能是您的 Web 浏览器、 AWS 访问权限、实例或关联的虚拟私有云 (VPC) 存在问题。有关可能的解决方案，请参阅[故障排除](troubleshooting.md#troubleshooting-env-loading)中的*无法打开环境*。

## 步骤 4：使用 AWS Cloud9 IDE 更改实例上的代码
<a name="lightsail-instances-change-code"></a>

在为新的环境显示 IDE 后，您可以使用 IDE 中的终端会话，而不是 Lightsail 终端会话。IDE 提供丰富的代码编辑体验以及对多种编程语言和运行时调试程序的支持。IDE 还包括颜色主题、快捷键绑定、编程语言特定的语法颜色以及代码格式。

要了解如何使用 IDE，请参阅 [AWS Cloud9 IDE 之旅](tour-ide.md)。

要了解如何更改您的实例上的代码，我们建议使用以下资源：
+  **All**：Lightsail 网站上的[获取“由 Bitnami 支持的”Lightsail 映像的应用程序密码](https://lightsail---aws.amazon.com.rproxy.govskope.cals/docs/how-to/article/log-in-to-your-bitnami-application-running-on-amazon-lightsail)
+  **Drupal**：Bitnami 网站上的[适用于 AWS 云的 BitnamiDrupal](https://docs.bitnami.com/aws/apps/drupal/)，以及 Drupal 网站上的[教程和网站使用技巧](https://www.drupal.org/node/627198)
+  **GitLab CE**：Bitnami 网站上的[适用于 AWS 云的 BitnamiGitLab CE](https://docs.bitnami.com/aws/apps/gitlab/)，以及 GitLab 网站上的 [GitLab 文档](https://docs.gitlab.com/ce/)
+  **Joomla**：Bitnami 网站上的[适用于 AWS 云的 BitnamiJoomla\$1](https://docs.bitnami.com/aws/apps/joomla/)，以及 Joomla\$1 网站上的 [Joomla\$1 入门](https://www.joomla.org/about-joomla/getting-started.html)
+  **LAMP 堆栈**：Bitnami 网站上的[适用于 AWS 云的 BitnamiLAMP](https://docs.bitnami.com/aws/infrastructure/lamp/)
+  **Magento**：Bitnami 网站上的[适用于 AWS 云的 BitnamiMagento](https://docs.bitnami.com/aws/apps/magento/)，以及 Magento 网站上的 [Magento 用户指南](http://docs.magento.com/m1/ce/user_guide/getting-started.html)
+  **MEAN**：Bitnami 网站上的[适用于 AWS 云的 BitnamiMEAN](https://docs.bitnami.com/aws/infrastructure/mean/)
+  **NGINX**：Bitnami 网站上的[适用于 AWS 云的 BitnamiNGINX](https://docs.bitnami.com/aws/infrastructure/nginx/)，以及 NGINX 网站上的 [NGINX Wiki](https://www.nginx.com/resources/wiki/)
+  **Node.js**：Bitnami 网站上的[适用于 AWS 云的 BitnamiNode.Js](https://docs.bitnami.com/aws/infrastructure/nodejs/)，以及 Node.js 网站上的[入门指南](https://nodejs.org/en/docs/guides/getting-started-guide/)
+  **Ubuntu 上的 Plesk 托管堆栈**：[在 Amazon Lightsail 上设置和配置 Plesk](https://aws.amazon.com/getting-started/hands-on/plesk-on-aws/)。
+  **Redmine**：Bitnami 网站上的[适用于 AWS 云的 Bitnami Redmine](https://docs.bitnami.com/aws/apps/redmine/)，以及 Redmine 网站上的[入门](http://www.redmine.org/projects/redmine/wiki/Getting_Started)
+  **WordPress**：Lightsail 网站上的 [Amazon Lightsail 实例中的 WordPress 使用入门](https://lightsail.aws.amazon.com/ls/docs/en_us/articles/amazon-lightsail-tutorial-launching-and-configuring-wordpress)以及 Bitnami 网站上的[适用于 AWS 云的 Bitnami WordPress](https://docs.bitnami.com/aws/apps/wordpress/)

# 在 AWS Cloud9 IDE AWS CodePipeline 中使用
<a name="codepipeline-repos"></a>

您可以使用 AWS Cloud9 集成开发环境 (IDE) 来处理与兼容的存储库中的源代码 AWS CodePipeline。

CodePipeline 是一项持续交付服务，可用于建模、可视化和自动执行发布软件所需的步骤以及对软件所做的持续更改。您可以使用 CodePipeline 快速对软件发布过程的不同阶段进行建模和配置。有关更多信息，请参阅 [AWS CodePipeline 《用户指南》](https://docs.aws.amazon.com/codepipeline/latest/userguide/welcome.html)。

**注意**  
完成这些程序可能会导致您的 AWS 账户被扣款。这些费用包括 Amazon EC2、 CodePipeline、Amazon S3 等服务以及支持的 AWS 服务可能产生的费用 CodePipeline。有关更多信息，请参阅 [Amazon EC2 定价](https://aws.amazon.com/ec2/pricing/)、[AWS CodePipeline 定价](https://aws.amazon.com/codepipeline/pricing/)、[Amazon S3 定价](https://aws.amazon.com/s3/pricing/)和[云服务定价](https://aws.amazon.com/pricing/services/)。  

+  [步骤 1：创建或确定源代码存储库](#codepipeline-repos-create-source-code) 
+  [步骤 2：创建 AWS Cloud9 开发环境，将其连接到代码存储库并上载代码](#codepipeline-repos-connect-to-repo) 
+  [第 3 步：准备使用 AWS CodePipeline](#codepipeline-repos-setup) 
+  [步骤 4：在中创建管道 AWS CodePipeline](#codepipeline-repos-create-pipeline) 

## 步骤 1：创建或确定源代码存储库
<a name="codepipeline-repos-create-source-code"></a>

在此步骤中，您将创建或确定与 CodePipeline 兼容的源代码存储库。

在本主题的后文中，您会将软件的源代码上传到该存储库。 CodePipeline 将使用您另外创建的相关管道，生成、测试和部署上传到该存储库中的源代码。

您的源代码存储库必须是 CodePipeline 支持以下存储库类型之一：
+  **AWS CodeCommit**。 如果您已经有要使用的存储库，请跳至[步骤 2：创建 AWS Cloud9 开发环境，将其连接到代码存储库，然后上传您的代码](#codepipeline-repos-connect-to-repo)。 CodeCommit 否则，要使用 CodeCommit，请按以下顺序按照*AWS CodeCommit 示例*中的说明进行操作，然后返回本主题：
  +  [步骤 1：设置具有所需访问权限的 IAM 组](sample-codecommit.md#sample-codecommit-permissions) 
  +  [步骤 2：在 AWS CodeCommit中创建存储库](sample-codecommit.md#sample-codecommit-create-repo) 
+  **Amazon S3**。如果您已在 Amazon S3 中有一个要使用的存储桶，请跳至[步骤 2：创建 AWS Cloud9 开发环境，将其连接到代码存储库，然后上传您的代码](#codepipeline-repos-connect-to-repo)。否则，要使用 Amazon S3，请按此顺序根据 *Amazon Simple Storage Service 用户指南*中的这些说明进行操作，然后返回本主题：
  +  [注册 Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/gsg/SigningUpforS3.html) 
  +  [创建存储桶](https://docs.aws.amazon.com/AmazonS3/latest/userguide/creating-bucket.html) 
+  **GitHub**。 如果您已有存储库 GitHub，则可以克隆它，然后使用 [Git 面板](source-control-gitpanel.md)界面在开发环境中创建本地副本。如果您尚未设置账户或存储库 GitHub，请参阅[相关文档](https://docs.github.com/en/github)以获取说明。

## 第 2 步：创建 AWS Cloud9 开发环境，将其连接到代码存储库，然后上传您的代码
<a name="codepipeline-repos-connect-to-repo"></a>

在此步骤中，您将在 AWS Cloud9 控制台中创建 AWS Cloud9 开发环境。然后，将环境连接到 CodePipeline 将要使用的存储库。最后，您可以使用环境的 AWS Cloud9 IDE 将源代码上传到存储库。

要创建环境，请按照[创建环境](create-environment.md)中的说明操作，然后返回本主题。（如果您已有一个环境，可以使用该环境，无需创建新的环境。）

要将环境连接到存储库（并在存储库中没有源代码时上载源代码），请使用以下几组说明之一。您选择的说明取决于存储源代码的存储库类型。


****  

|  **存储库类型**  |  **说明**  | 
| --- | --- | 
|  CodeCommit  |  按照 *AWS CodeCommit GitHub 示例* 中的以下说明操作： [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/codepipeline-repos.html)  | 
|  Amazon S3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/zh_cn/cloud9/latest/user-guide/codepipeline-repos.html)  | 
|  GitHub  |  您可以使用 [Git 面板](source-control-gitpanel.md)界面克隆托管 GitHub 并与之交互的仓库。  | 

将环境连接到存储库后，每当您将源代码更改从 AWS Cloud9 IDE 推送到存储库时，都会 CodePipeline 自动通过相关管道发送这些更改，以供构建、测试和部署。您将在本主题的后文中创建相关管道。

## 第 3 步：准备使用 AWS CodePipeline
<a name="codepipeline-repos-setup"></a>

在此步骤中，您将特定的 AWS 托管策略附加到您在[团队设置](setup.md)中创建或确定的 IAM 群组。这使得组用户可以在 CodePipeline 中开始创建和使用管道。

如果您 CodePipeline 之前使用过，请跳至[步骤 4：在中创建管道 AWS CodePipeline](#codepipeline-repos-create-pipeline)。

在此步骤中，请按照用户*指南中的步骤 3：使用 IAM 托管策略向 IAM AWS CodePipeline 用户*[分配 AWS CodePipeline权限](https://docs.aws.amazon.com/codepipeline/latest/userguide/getting-started-codepipeline.html#assign-permissions)，然后返回本主题。

## 步骤 4：在中创建管道 AWS CodePipeline
<a name="codepipeline-repos-create-pipeline"></a>

在此步骤中，您将在中创建一个管道 CodePipeline ，该管道使用您在本主题前面创建或确定的存储库。

对于此步骤，请按照 *AWS CodePipeline 用户指南*中的[在 AWS CodePipeline中创建管道](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-create.html)的说明操作。

创建管道后，通过要构建、测试和部署的管道 CodePipeline 发送存储库中源代码的当前版本。然后，每当您将源代码更改从 AWS Cloud9 IDE 推送到存储库时，都会 CodePipeline 自动将这些更改通过管道发送以供构建、测试和部署。

要查看管道，请按照 *AWS CodePipeline 用户指南*中的[查看 AWS CodePipeline中的管道详细信息和历史记录](https://docs.aws.amazon.com/codepipeline/latest/userguide/pipelines-view.html)的说明操作。

# 与亚马逊合作 CodeCatalyst
<a name="ide-toolkits-cloud9"></a>



Amazon CodeCatalyst 是一个面向软件开发团队的基于云的协作空间。 CodeCatalyst 是一个使用连续 integration/delivery (CI/CD) 工具进行工作、协作编写代码以及构建、测试和部署应用程序的统一场所。您可以通过将您的空间连接到您的 CodeCatalyst 空间来将 AWS 资源与您的 AWS 账户项目联系起来。您还可以 CodeCatalyst 使用快速、自信地交付软件。有关的更多信息 CodeCatalyst，请参阅 [Amazon 是什么 CodeCatalyst？](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment.html) 在《*亚马逊 CodeCatalyst 指南》*中。

开发环境是基于云的开发环境，你可以在中使用它 CodeCatalyst 来处理存储在项目源存储库中的代码。你可以在中创建开发环境 CodeCatalyst。然后，在那里你可以使用支持的集成开发环境 (IDE) 在特定项目中 CodeCatalyst 处理代码。您也可以创建一个空的开发环境，从第三方存储库中克隆代码，以便在支持的 IDE 中工作。

用于在 CodeCatalyst 控制台中访问开发环境的 AWS Cloud9 IDE 与在其上运行的 AWS Cloud9 IDE 不同 AWS。在 CodeCatalyst AWS Cloud9 IDE 中，您将自动登录 CodeCatalyst并可以使用 IDE 中的 **aws-** explorer 选项访问该服务。有关该 AWS 工具包的更多信息，请参阅*AWS Cloud9 指南 AWS Cloud9*中的[AWS 工具包](https://docs.aws.amazon.com/cloud9/latest/user-guide/toolkit-welcome.html)。

**Topics**
+ [开始使用亚马逊 CodeCatalyst AWS Cloud9](ide-toolkits-cloud9-getstarted.title.md)
+ [从亚马逊迁移 AWS Cloud9 到亚马逊 CodeCatalyst](c9-replication-cc.md)
+ [使用复制工具](c9-replication-cc-tool.md)
+ [FAQs 关于复制过程](faqs-replication-tool.md)
+ [Amazon 中的开发环境 CodeCatalyst](devenvironment-cloud9.title.md)

# 开始使用亚马逊 CodeCatalyst AWS Cloud9
<a name="ide-toolkits-cloud9-getstarted.title"></a>

本节概述了如何开始使用 CodeCatalyst。本节中的主题涵盖如何 AWS Cloud9 在 Amazon 中使用 CodeCatalyst 以及如何在中复制您的 AWS Cloud9 环境 CodeCatalyst。后面的主题还将详细介绍如何创建 CodeCatalyst 开发环境以及如何使用 AWS Cloud9 IDE 访问您的开发环境。

AWS 工具包是特定于 IDE 的软件开发套件 (SDKs)，可快速访问 AWS 云 帐户、服务和资源。通过您在 AWS Toolkit 中的 CodeCatalyst 帐户，您可以在便捷的界面中查看、编辑和管理您的 CodeCatalyst 开发环境、空间和项目。要详细了解通过 AWS Toolkits 提供的 AWS 云 服务和功能，请参阅[什么是 AWS Toolkit for Visual Studio Code？](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html) ，[AWS 工具包的用](https://docs.aws.amazon.com/cloud9/latest/user-guide/toolkit-welcome.html)途 AWS Cloud9，以及[什么是 AWS Toolkit for JetBrains？](https://docs.aws.amazon.com/toolkit-for-vscode/latest/userguide/welcome.html) 。 AWS Toolkit for JetBrains指南@@ [是什么](https://docs.aws.amazon.com/toolkit-for-jetbrains/latest/userguide/welcome.html)。

要 AWS Cloud9 在 IDE 中使用 CodeCatalyst ，您必须拥有在 CodeCatalyst 控制台中创建的现有空间、项目和开发环境。

**注意**  
不要在 AWS Cloud9 IDE 的文件系统中为的同名文件夹中创建名为 pro **j** ects 的子文件夹。 CodeCatalyst如果这样做，您将无法访问此目录中的任何文件。此问题会影响文件路径 **/projects/projects**。诸如 **/test/projects** 和**/**之类的文件路径projects/test/projects不受此问题的影响。这是一个已知问题，仅影响 AWS Cloud9 IDE 文件资源管理器。

**注意**  
当前无法使用 AWS Cloud9 IDE 的文件系统在同名文件夹中创建名为 pro **j** ects 的子文件夹。 CodeCatalyst您将无法从 AWS Cloud9 IDE 文件资源管理器访问此目录中的任何文件，但可以使用命令行访问它们。请使用其他文件夹名称。**此问题仅影响文件路径 **/projects/projects，诸如 /test/projec** **ts 和/**之类的文件路径应该起作用。projects/test/projects**这是一个已知问题，仅影响 AWS Cloud9 IDE 文件资源管理器。

# 从亚马逊迁移 AWS Cloud9 到亚马逊 CodeCatalyst
<a name="c9-replication-cc"></a>

AWS Cloud9 in CodeCatalyst 为与之交互提供了完全托管的体验 AWS Cloud9。您可以在 Amazon 中手动复制您当前的 AWS Cloud9 代码资源 CodeCatalyst。该操作过程将在以下各节详细介绍。要移动您的代码资源并对其进行复制，请在其中创建一个空间 CodeCatalyst。空间代表的是您的公司、部门或团体。您需要创建空间来添加项目、成员以及您在中创建的关联云资源 CodeCatalyst。当用户接受项目邀请时， CodeCatalyst 会自动将其添加到空间。具有**空间管理员**角色的用户可以管理空间。

在此空间中，您可以创建项目并添加源存储库。项目是支持开发团队和任务 CodeCatalyst 的协作空间。创建项目后，您可以添加、更新或删除资源。您还可以自定义项目控制面板，并监控团队的工作进度。一个空间内可以有多个项目。源存储库的可添加数量取决于您已在 AWS Cloud9 环境中使用的存储库数量。创建此项目并添加了适用的源存储库后，您可能需要返回到您的 AWS Cloud9 环境并将环境数据复制到中的这些新存储库中 CodeCatalyst。您需要进行的操作取决于您在 AWS Cloud9中所拥有的源存储库类型。

创建空间、项目和源存储库后，可以在开发环境中 CodeCatalyst 启动您的环境。 AWS Cloud9 开发环境是云端开发环境。您可以在中使用开发环境 CodeCatalyst 来处理存储在项目源存储库中的代码。您还可以在中创建开发环境 CodeCatalyst ，以便在具有受支持的集成开发环境 (IDE) 的特定项目开发环境中处理代码。

您也可以 CodeCatalyst 使用复制工具将当前的 AWS Cloud9 代码资源复制到。这是您下载并在您的 AWS Cloud9 环境中运行的工具。如果您已经注册并创建了空间 CodeCatalyst，则该工具会自动在此空间中创建一个项目，并将您的代码资源复制到中的新存储库中 CodeCatalyst。这一过程与手动复制过程类似。这取决于您在 AWS Cloud9中所拥有的源存储库类型。例如，如果您有GitHub存储库，则仍需要使用 CodeCatalyst控制台中的**GitHub扩展程序**来复制这些存储库。
+  [步骤 1：注册 Amazon CodeCatalyst 并创建空间](#c9-replication-cc-space-creation) 
+  [第 2 步 在空间中创建项目](#c9-replication-cc-project-creation) 
+  [第 3 步 在项目中创建一个源存储库](#c9-replication-cc-repo-creation) 
+  [第 4 步 将您的 AWS Cloud9 代码资源复制到中的源存储库 CodeCatalyst ](#c9-replication-cc-source-repo-creation) 
+  [第 5 步。在 CodeCatalyst 使用中创建开发环境 AWS Cloud9](#dev-environment-creation) 

## 步骤 1：注册 Amazon CodeCatalyst 并创建空间
<a name="c9-replication-cc-space-creation"></a>

 CodeCatalyst 无需邀请您加入现有空间或项目，即可注册 Amazon。注册后便会自动创建一个空间和项目。您可以输入您使用的现有 AWS 账户 ID AWS Cloud9。这同样 AWS 账户 可以用于计费。有关如何查找您的 AWS 账户 身份的信息，请参阅[您的 AWS 账户 身份证及其别名](https://docs.aws.amazon.com/IAM/latest/UserGuide/console_account-alias.html)。按照此步骤注册您的 Amazon CodeCatalyst 个人资料、创建空间并为您的空间添加账户。

**以新用户身份注册**

1. 打开 [CodeCatalyst 控制台](https://codecatalyst.aws/)。

1. 在欢迎页中，选择**注册**。

   此时将显示 “**创建您的 AWS 建造者 ID**” 页面。 AWS Builder ID 是您创建用于登录的身份。此 ID 与 AWS 账户 ID 不同。要了解有关 AWS 生成器 ID 的更多信息，请参阅《*AWS 登录用户指南*》中的[AWS 生成器 ID 和其他 AWS 凭证](https://docs.aws.amazon.com/signin/latest/userguide/differences-aws_builder_id.html)。

1. 在**您的电子邮件地址**中，输入您要关联的电子邮件地址 CodeCatalyst。然后选择**下一步**。

1. 在 “**您的姓名**” 中，输入要在使用 AWS 建筑商 ID 的应用程序中显示的名字和姓氏。

   这个名字是你的 AWS Builder ID 个人资料名称。您之后可以在需要时更改这个名称。

   选择**下一步**。此时将显示**电子邮件验证**页面。验证码将发送到您指定的电子邮件中。

1.  在**验证码**中，输入您收到的验证码，然后选择**验证**。

   如果您在 5 分钟后仍未收到验证码，也没能在垃圾邮件文件夹中找到该验证码，请选择**重新发送验证码**。

1. 验证完成后，输入密码并选择**确认密码**。

   选中确认您已阅读并确认 AWS 客户协议和 AWS 服务条款的复选框，然后选择**创建我的个人资料**。

1. 在**创建您的别名**页面上，输入要使用的别名 CodeCatalyst。其他 CodeCatalyst 用户将在评论和拉取请求中使用这个别名给 @mention you。您的 CodeCatalyst 个人资料将包含您在 AWS 建造者 ID 中的全名和您的 CodeCatalyst 别名。您无法更改您的 CodeCatalyst 别名。

   您的全名和别名将显示在中的不同区域 CodeCatalyst。例如，您的资料名称会出现在您的活动源中，但项目成员会使用您的别名来 @mention 提及您。

   选择**创建别名**。页面将更新，并显示**创建您的空间**部分。

1. 在**空间名称**中，输入空间名称，然后选择**下一步**。

   您无法更改空间名称。

1. 在 **AWS 账户 ID**中，关联您要连接到空间的账户的十二位 ID。

   在 **AWS 账户 验证令牌**中，复制生成的令牌 ID。令牌会自动复制。但是，您可能需要在批准 AWS 连接请求时将其存储。

1. 选择 “**验证” AWS**。

1. “**验证 Amazon CodeCatalyst 空间**” 页面将在中打开 AWS 管理控制台。

   这是 **Amazon CodeCatalyst Spaces** 页面。您可能需要登录才能访问该页面。

   要访问该页面，请登录中的 Amazon CodeCatalyst Spaces [AWS 管理控制台](https://console.aws.amazon.com/codecatalyst/home/)。

   中的验证令牌字段会自动填充中生成的令牌 CodeCatalyst。 AWS 管理控制台 

1. 选择**验证空间**。

   系统将显示**账户验证**成功消息，表示该账户已添加到空间。

   默认情况下，您将使用 CodeCatalyst 免费套餐。如果要更改，请选择**要启用标准套餐或为此空间添加 IAM 角色，请查看空间详细信息**。

   有关 CodeCatalyst 定价套餐的更多信息，请参阅 [Amazon CodeCatalyst -定价](https://codecatalyst.aws/explore/pricing)。

   **CodeCatalyst 空间详情**页面将在中打开 AWS 管理控制台。这是 **Amazon CodeCatalyst Spaces** 页面。您可能需要登录才能访问该页面。

1. 选择 “**前往[亚马逊](https://codecatalyst.aws/)**” CodeCatalyst。

1. 在的创建页面上 CodeCatalyst，选择**创建空间**。

   创建空间时会显示一条状态消息。创建空间后，将 CodeCatalyst 打开您的空间页面。该视图默认为**项目**选项卡。
**注意**  
如果显示权限错误或横幅，请刷新页面并尝试再次查看该页面。

注册 CodeCatalyst 并创建空间后，复制过程的下一步是在该空间中创建一个项目。

## 第 2 步 在空间中创建项目
<a name="c9-replication-cc-project-creation"></a>

以下步骤概括了如何在上一步中创建的空间中创建一个空项目。通过此项目，您可以在以后手动添加所需的资源。在创建项目之前，您必须拥有*空间管理员* 角色，并且必须加入要创建项目的空间。创建空间时， CodeCatalyst 会自动为您分配*空间管理员*角色。*空间管理员*角色是中最强大的角色 CodeCatalyst。有关此角色及其权限的更多信息，请参阅 [Space administrator role](https://docs.aws.amazon.com/codecatalyst/latest/userguide/welcome.html)。

**创建空项目**

1. 导航到要在其中创建项目的空间。

1. 在空间控制面板上，选择**创建项目**。

1. 选择**从头开始**。

1. 在**为项目命名**下，输入要分配给项目的名称。该名称在空间内必须是唯一的。

1. 选择**创建项目**。

创建项目后，复制过程的下一步是创建一个或多个源存储库。

## 第 3 步 在项目中创建一个源存储库
<a name="c9-replication-cc-repo-creation"></a>

在您刚刚创建的项目中，您需要创建一个源存储库。此存储库包含一个文件，即 **README.md** 文件，您可以随时编辑或删除该文件。根据您在创建源存储库时所做的选择，它可能还包含一个 `.gitignore` 文件。

**创建源存储库**

1. 打开 [CodeCatalyst 控制台](https://codecatalyst.aws/)。

1. 导航到您的项目。

1. 在导航窗格中，选择**代码**，然后选择**源存储库**。

1. 选择**添加存储库**，然后选择**创建存储库**。

1. 在**存储库名称**中，输入存储库的名称。

   一个项目中的存储库名称必须唯一。有关存储库名称要求的更多信息，请参阅[中的源存储库配额 CodeCatalyst](https://docs.aws.amazon.com/codecatalyst/latest/userguide/source-quotas.html)。

1. （可选）在**描述**中，添加对存储库的描述，这有助于项目中的其他用户了解存储库的用途。

1. （可选）为您计划推送的代码类型添加一个 `.gitignore` 文件。

1. 选择**创建**。
**注意**  
CodeCatalyst 在创建存储库时将`README.md`文件添加到存储库中。 CodeCatalyst 还会在名为 **main** 的默认分支中为存储库创建初始提交。您可以编辑或删除 README.md 文件，但无法更改或删除默认分支。

1. 要获取源存储库克隆 URL 和 PAT，请选择**克隆存储库**。

1. 要复制每个 HTTPS 克隆 URL 和 PAT，请选择**复制**。然后，将克隆 URL 和 PAT 存储在您可以检索到的位置。

   克隆 URL 和 PAT 将在第 4 步中使用，并被引用为 `CODECATALYST_SOURCE_REPO_CLONE_URL` 和 `CODECATALYST_PAT`。

在项目中创建源存储库后，将您的 AWS Cloud9 数据复制到该源存储库。

## 第 4 步 将您的 AWS Cloud9 代码资源复制到中的源存储库 CodeCatalyst
<a name="c9-replication-cc-source-repo-creation"></a>

您的 AWS Cloud9 环境中源存储库的类型决定了将代码资源存入您创建的 CodeCatalyst 源存储库所遵循的复制方法。这些方法如下所示：
+ [在中使用GitHub存储库 AWS Cloud9](#c9-replication-cc-source-repo-creation-github)
+ [使用非（例如 GitLab 或 Bitbucket）中的存储库 GitHubAWS Cloud9](#c9-replication-cc-source-repo-creation-nongithub)
+ [在 AWS Cloud9中使用空存储库](#c9-replication-cc-source-norepo-creation)。使用此方法，您在 AWS Cloud9中不会使用任何源存储库。

### 在中使用GitHub存储库 CodeCatalyst
<a name="c9-replication-cc-source-repo-creation-github"></a>

借助**GitHub存储库**扩展，您可以 AWS Cloud9 在 Amazon CodeCatalyst 项目中使用链接GitHub存储库。以下步骤概述了如何从 CodeCatalyst 目录中安装GitHub扩展。这些步骤还展示了如何将您的现有GitHub账户连接到您的 CodeCatalyst 空间，以及如何将GitHub存储库链接到您的 CodeCatalyst 项目。

此方法的第一步是从 CodeCatalyst 目录中安装**GitHub存储库**扩展。要安装该扩展，请执行以下步骤。

**重要**  
作为安装和配置 **Github 存储库**扩展的一部分，您必须在您的 GitHub 账户中安装扩展。为此，您必须是GitHub账户管理员和 CodeCatalyst空间管理员。

**步骤 1：从 CodeCatalyst 目录中安装扩展**

1. 打开 [CodeCatalyst 控制台](https://codecatalyst.aws/)。

1. 导航到您的空间。
**提示**  
如果您属于多个空间，则可以在顶部导航栏中选择要查看的空间。

1. 在搜索栏旁边的顶部菜单栏中选择 “**目录**” 图标，即可导航到目录。 CodeCatalyst 您可以搜索 **GitHub 存储库**或根据类别筛选扩展。

1. （可选）要查看有关扩展的更多详细信息，例如与之关联的权限，请选择 **GitHub 存储库**扩展名。

1. 选择**安装**。查看扩展所需的权限，如果要继续，请再次选择**安装**。

安装 **GitHub 存储库**扩展后，您将进入 **GitHub 存储库**扩展详细信息页面，您可以在其中查看和管理连接的 GitHub 账户和关联的 GitHub 存储库。

安装**GitHub存储库**扩展程序后，将您的GitHub账户关联到您的 CodeCatalyst 空间。要连接您的 GitHub 账户，请执行以下步骤。

**步骤 2：将您的GitHub账户关联到 CodeCatalyst**

1. 在**已连接的 Github 账户**选项卡中，选择**连接 GitHub 账户**以转到外部的 GitHub 站点。

1. 使用您的GitHub凭证登录您的GitHub账户，然后选择要安装Amazon的账户 CodeCatalyst。

1. 选择是否允许 CodeCatalyst 访问所有当前和将来的存储库。或者，也可以选择要在中使用的特定GitHub存储库 CodeCatalyst。默认选项是 GitHub 空间中的所有 GitHub 存储库。

1. 查看授予的权限 CodeCatalyst，然后选择 “**安装**”。

将您的GitHub账户关联到后 CodeCatalyst，您可以在**GitHub存储库**扩展详情页面的**GitHub账户**选项卡中查看关联的账户。

在中使用存储GitHub库的最后一步 CodeCatalyst 是将存储库链接到要使用它的 CodeCatalyst 项目。要将存储GitHub库链接到 CodeCatalyst 项目，请执行整个过程的步骤 3 中概述的以下步骤：

**步骤 3：从GitHub存储库扩展详情页面将GitHub仓库链接到 CodeCatalyst 项目**

1. 在**已关联的 GitHub 存储库**选项卡中，选择**关联 GitHub 存储库**。

1. 在 **GitHub 账户**中，选择包含要关联的存储库的 GitHub 账户。

1. 对于**GitHub存储库**，选择要链接到 CodeCatalyst 项目的存储库。

1. 对于**CodeCatalyst 项目**，选择要将GitHub存储库链接到的 CodeCatalyst 项目。

1. 选择**链接**。

你的 CodeCatalyst 仓库现在应该有你刚才推送的更新文件和提交。现在，您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。有关开发环境的详细信息，请参阅[中的开发环境 CodeCatalyst](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment.html)。

现在，您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。[步骤 5：使用中的创建开发环境中概述了执行此操作 AWS Cloud9 的](#dev-environment-creation)步骤 CodeCatalyst

### 在中使用非GitHub存储库 CodeCatalyst
<a name="c9-replication-cc-source-repo-creation-nongithub"></a>

在 AWS Cloud9 使用非GitHub存储库复制环境 CodeCatalyst之前，您需要在 Amazon 中创建个人访问令牌 (PAT)。下一节概述了如何创建此令牌。

#### 在 Amazon 中创建个人访问令牌 CodeCatalyst
<a name="c9-replication-cc-pat-creation"></a>

您可以在本地计算机上使用 Git 客户端或在集成式开发环境 (IDE) 中访问您在项目中创建的源存储库。要执行此操作，您必须输入应用程序特定的密码。您可以创建用于此目的的个人访问令牌 (PAT)。您创建的个人访问令牌 (PATs) 与您在所有空间和项目中的用户身份相关联 CodeCatalyst。您可以查看您创建的 PATs 名称和到期日期，也可以删除不再需要 PATs 的名称。您只能在创建 PAT 密钥时对其进行复制。

**创建个人访问令牌 (PAT)**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 在顶部菜单栏中，选择您的个人资料徽章，然后选择**我的设置**。
**提示**  
您还可以找到您的用户个人资料。要执行此操作，请在项目或空间的成员页面上，从成员列表中选择您的姓名。

1. 在**个人访问令牌**下，选择**创建**。

1. 在 **PAT 名称**中，为您的个人访问令牌 (PAT) 输入一个描述性名称。

1. 在**到期日期**中，保留默认日期，或者选择日历图标以自定义日期。到期日期默认为自当前日期起之后的 1 年时间。

1. 选择**创建**。
**提示**  
当为源存储库选择**克隆存储库**时，也可以创建此令牌。

1. 要复制 PAT 密钥，请选择**复制**。将 PAT 密钥储存到您可以检索到的位置。
**重要**  
PAT 密钥仅显示一次。关闭窗口后将无法再查看。如果您未将 PAT 密钥保存在安全位置，则可以创建新的密钥。

为源存储库创建 PAT 后， CodeCatalyst 通过在 AWS Cloud9 环境中添加远程存储库并将数据推送到该存储库，将您的数据从您的 AWS Cloud9 环境复制到，如以下部分所述。

#### 在您的 AWS Cloud9 环境中添加远程存储库
<a name="c9-replication-cc-source-repo-creation-nongithub-steps"></a>

假设你运行的存储库不是 GitHub 存储库。您可以在 AWS Cloud9 环境中添加远程存储库，并将数据推送到中的源存储库 CodeCatalyst。要完成此过程，请运行以下命令。

在 AWS Cloud9 IDE 中，添加一个远程存储库，该存储库指向您在中复制过程的步骤 3 中创建的源存储库 CodeCatalyst。将命令中的 `CODECATALYST_SOURCE_REPO_CLONE_URL` 替换为您在 [第 3 步 的第 10 步中保存的克隆 URL （第 3 步 在项目中创建一个源存储库](#c9-replication-cc-repo-creation)）。

```
 git remote add codecatalyst CODECATALYST_SOURCE_REPO_CLONE_URL
```

使用以下命令将新分支推送到源存储库。当系统提示您输入密码时，请使用您在[第 3 步的第 10 步中保存的 `CODECATALYST_PAT` （第 3 步 在项目中创建一个源存储库](#c9-replication-cc-repo-creation)）：

```
git checkout -b replication && git push codecatalyst replication
```

以下是预期的命令运行输出的示例：

```
Switched to a new branch 'replication'
Password for 'https://[aws-account-id]@[aws-region].codecatalyst.aws/v1/MySpace222581768915/Replication/Repository':
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (4/4), 982 bytes | 122.00 KiB/s, done.
Total 4 (delta 0), reused 0 (delta 0), pack-reused 0
remote: Validating objects: 100%
To https://[aws-account-id].codecatalyst.aws/v1/MySpace222581768915/Replication/Repository
* [new branch] replication → replication
```

```
```

此分支可在您在中创建的源存储库中找到 CodeCatalyst。您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。有关开发环境的更多信息，请参阅[中的开发环境 CodeCatalyst](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment.html)。

现在，您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。[步骤 5：使用中的创建开发环境中概述了执行此操作 AWS Cloud9 的](#dev-environment-creation)步骤 CodeCatalyst

#### 在中使用空存储库 AWS Cloud9
<a name="c9-replication-cc-source-norepo-creation"></a>

首先在 Amazon 中创建个人访问令牌 (PAT)， CodeCatalyst 然后才能 AWS Cloud9 使用空存储库复制您的环境。下一节概述了如何创建此令牌。

##### 在 Amazon 中创建个人访问令牌 CodeCatalyst
<a name="c9-replication-cc-pat-creation-empty"></a>

您可以在本地计算机上使用 Git 客户端或在集成式开发环境 (IDE) 中访问您在项目中创建的源存储库。要执行此操作，您必须输入应用程序特定的密码。您可以创建用于此目的的个人访问令牌 (PAT)。您创建的个人访问令牌 (PATs) 与您在所有空间和项目中的用户身份相关联 CodeCatalyst。您可以查看您创建的 PATs 名称和到期日期，也可以删除不再需要 PATs 的名称。您只能在创建 PAT 密钥时对其进行复制。

**创建个人访问令牌 (PAT)**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 在顶部菜单栏中，选择您的个人资料徽章，然后选择**我的设置**。
**提示**  
您还可以找到您的用户个人资料。要执行此操作，请在项目或空间的成员页面上，从成员列表中选择您的姓名。

1. 在**个人访问令牌**下，选择**创建**。

1. 在 **PAT 名称**中，为您的个人访问令牌 (PAT) 输入一个描述性名称。

1. 在**到期日期**中，保留默认日期，或者选择日历图标以自定义日期。到期日期默认为自当前日期起之后的 1 年时间。

1. 选择**创建**。
**提示**  
当为源存储库选择**克隆存储库**时，也可以创建此令牌。

1. 要复制 PAT 密钥，请选择**复制**。将 PAT 密钥储存到您可以检索到的位置。
**重要**  
PAT 密钥仅显示一次。关闭窗口后将无法再查看。如果您未将 PAT 密钥保存在安全位置，则可以创建新的密钥。

为源存储库创建 PAT 后， CodeCatalyst 通过在 AWS Cloud9 环境中启动一个空存储库并指向您在中创建的源存储库，将数据从您的 AWS Cloud9 环境复制到 CodeCatalyst，如以下部分所述。

##### 在中启动一个空存储库 AWS Cloud9
<a name="c9-replication-cc-source-norepo-creation-steps"></a>

如果您没有在中设置任何源存储库 AWS Cloud9，请在中启动一个空存储库 AWS Cloud9。此外，请指向您在中创建的源存储库 CodeCatalyst，然后添加和推送要复制的文件Git。执行以下步骤并运行以下命令将 AWS Cloud9 文件复制到其中 CodeCatalyst。

1. 在您的 AWS Cloud9 环境中，通过运行以下命令启动一个空存储库：

   ```
   git init -b main
   ```

   然后，您会看到如下所示的类似的输出：

   ```
   Initialized empty Git repository in /home/ec2-user/environment/.git/
   ```

1. 从中克隆源存储库 URL CodeCatalyst。导航到您在 CodeCatalyst 控制台中创建的 CodeCatalyst 项目，然后在导航窗格中选择 “**代码**”，然后选择 “**源存储库**”。

1. 从源存储库列表中选择所需的存储库，然后选择**克隆存储库**，复制克隆 URL。

1. 使用您克隆的 URL 添加 CodeCatalyst 存储库，并将已存在于空存储库中的 CodeCatalyst内容推送到：

   ```
   git remote add origin [...]
   git push origin --force
   ```

1. 添加您想要复制的文件。如果要复制环境目录中的所有文件，请运行 `git add -A`：

   ```
   git add -A .
   git commit -m "replicate"
   ```

1. 合并两个不相关的历史记录。如果合并发生冲突，请解决问题：

   ```
   git merge origin/main --allow-unrelated-histories
   ```

1.  CodeCatalyst 通过运行以下命令将更改推送回源存储库。当系统提示您输入密码时，输入您在[第 3 步的第 10 步中生成的个人访问令牌 (`CODECATALYST_PAT`) （第 3 步 在项目中创建一个源存储库](#c9-replication-cc-repo-creation)）：

   ```
   Admin:~/environment (main) $ git push origin main
   Password for 'https://222581768915@git.us-west-2.codecatalyst.aws/v1/MySpace222581768915/Replication/Replication':
   ```

完成此过程后，您的 CodeCatalyst 存储库将包含您刚刚推送的更新文件和提交。现在，您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。下一节中概述了执行此操作的步骤。

## 步骤 5：使用 AWS Cloud9 中的创建开发环境 CodeCatalyst
<a name="dev-environment-creation"></a>

以下过程概述了如何在using中 CodeCatalyst 创建开发环境 AWS Cloud9 以及您刚刚复制的数据。

**要创建开发环境，请使用以下方法 AWS Cloud9**

1. 打开 CodeCatalyst 控制台，[网址为 https://codecatalyst.aws/](https://codecatalyst.aws/)。

1. 导航到要在其中创建开发环境的项目。

1. 在导航窗格中，选择**概览**，然后导航到**我的开发环境**部分。

1. 选择**创建开发环境**。

1.  AWS Cloud9 从下拉菜单中选择。

1. 选择**克隆存储库**。
**注意**  
目前， CodeCatalyst 不支持克隆第三方存储库，但您可以创建开发环境并从所选的 IDE 中将第三方存储库克隆到该环境中。

1. 请执行以下操作之一：

   1. 选择要克隆的存储库，选择**在现有分支中工作**，然后从**现有分支**下拉菜单中选择一个分支。

   1. 选择要克隆的存储库，选择**在新分支中工作**，在**分支名称**字段中输入分支名称，然后从**创建分支自**下拉菜单中选择要从中创建新分支的分支。

1. 可选操作，为开发环境添加别名。

1. 可选操作，选择**开发环境配置**编辑按钮，编辑开发环境的计算、存储或超时配置。

1. 选择**创建**。在创建开发环境时，开发环境状态列将显示**正在启动**，开发环境创建完成后，状态列将显示**正在运行**。

# 使用复制工具
<a name="c9-replication-cc-tool"></a>

AWS Cloud9 in CodeCatalyst 为与之交互提供了完全托管的体验 AWS Cloud9。为了让客户能够尝试 AWS Cloud9 在中使用 CodeCatalyst，我们创建了一个复制工具。在您的 AWS Cloud9 环境中复制并运行脚本后，请按照提示运行该脚本并将您的代码资源从复制 AWS Cloud9 到 CodeCatalyst。有关复制工具和过程的更多信息，请参阅下面概述的 [FAQ's on the replication process](https://docs.aws.amazon.com/cloud9/latest/user-guide/faqs-replication-tool)。

**注意**  
此复制过程不会对您现有的 AWS Cloud9 环境产生任何影响。复制过程完成后，您可以删除开发环境、源存储库、项目和空间，这不会对您的 AWS Cloud9 环境产生任何影响。此工具只会将您的代码资源复制到 AWS Cloud9 中 CodeCatalyst，不会删除或配置您的现有 AWS Cloud9 环境。此复制工具已发布给初始选定的 AWS 账户组。因此，它可能不会出现在某些 AWS 账户中。

**注意**  
建议您在下载该工具之前先注册 Amazon CodeCatalyst 并创建空间。有关注册的信息 CodeCatalyst，请参阅[注册 Amazon CodeCatalyst 并创建空间](c9-replication-cc.md#c9-replication-cc-space-creation)。

## 在亚马逊 AWS Cloud9 上使用的好处 CodeCatalyst
<a name="cloud9-codecatalyst-benefits"></a>

以下部分概述了在 AWS Cloud9 上使用时将体验到的一些性能优势和增强功能 CodeCatalyst：
+ CodeCatalyst 提供集成体验，使您能够使用完全托管的开发环境从一个位置管理整个软件开发生命周期。
+ 改进了发布时的 Amazon EBS 卷大小选项。
+ 支持临时环境，并能够按需扩展开发环境的计算。
+ 自定义 AMI 支持，可通过自定义映像的规范获得。
+ Devfile 支持，让您能够将配置描述为代码。

## CodeCatalyst 使用复制工具在中复制您的 AWS Cloud9 代码资源
<a name="c9-replication-cc-tool-steps"></a>

以下过程详细介绍了如何复制和运行复制工具，完成复制过程。

1. 复制下面的脚本并确保在 AWS Cloud9 环境中运行它：

   ```
   curl https://dx5z5embsyrja.cloudfront.net -o /tmp/replicate-tool.tar.gz && tar --no-same-owner --no-same-permissions -xvf /tmp/replicate-tool.tar.gz -C /tmp && node /tmp/cloud9-replication-tools
   ```

1. *[可选]* 复制工具使用您的 AWS 账户 ID 进行遥测。该操作的目的是帮助我们更好地识别您在使用该工具时可能遇到的任何问题。我们会发出 `tool starts`、`tool fails`、`tool is cancelled by user`、`tool completes successfully` 和 `tool creates a Dev Environment for the user` 遥测事件。如果要禁用复制工具遥测，请参阅下面的[禁用复制工具的遥测](#disable-telemetry)。

1. 在您的 AWS Cloud9 环境中复制并运行复制工具后，您需要在浏览器中导航到访问网址，然后在 10 分钟内单击 “*允许*”，从而将您的 AWS 账户 与 AWS 构建器 ID 关联起来。请确保您只打开该链接一次，如果您多次打开该链接，则会导致错误，并且需要重新开始。有关 AWS 生成器 ID 的更多信息，请参阅《[登录用户指南》中的 “使用 AWS 生成器 ID AWS](https://docs.aws.amazon.com/signin/latest/userguide/sign-in-aws_builder_id.html) *登录”*。这将授予复制工具访问您的代码资源的权限，以便在中 CodeCatalyst进行复制。

1. 选择要使用的空间。如果您只有一个空间，则会选择该空间。有关空间的更多信息，请参阅 *Amazon CodeCatalyst 用户指南 CodeCatalyst*[中的空间](https://docs.aws.amazon.com/codecatalyst/latest/userguide/spaces.html)。

1. 选择是要在中复制代码， CodeCatalyst 还是要在新的开发环境中试一试。我们建议直接在中 CodeCatalyst复制您的代码。有关开发环境的更多信息，请参阅 *Amazon CodeCatalyst 用户指南 CodeCatalyst*[中的开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment.html)。

1. 输入项目的名称或按 Enter 键使用提供的默认名称。

1. 出现提示时，选择要如何将文件复制到中的新源存储库 CodeCatalyst。您可以选择将根文件夹推送到单个 CodeCatalyst 存储库，也可以选择将子文件夹推送到不同的 CodeCatalyst 存储库。

1. 工具完成后，通过终端消息中提供的 URL 在 CodeCatalyst控制台中导航到该项目，以访问您的代码资源 CodeCatalyst。

完成此过程后，您的 CodeCatalyst 存储库将包含您刚刚推送的更新文件和提交。现在，您可以从该分支创建开发环境并使用 AWS Cloud9将其打开。

## 禁用复制工具的遥测
<a name="disable-telemetry"></a>

以下步骤概述了如何设置环境变量来禁用复制工具的遥测。

1. 在您的 AWS Cloud9 环境中打开终端

1. 运行以下命令之一：

   ```
   export CLOUD9_REPLICATION_TOOL_TELEMETRY=off
   ```

   或者

   ```
   export CLOUD9_REPLICATION_TOOL_TELEMETRY=0
   ```

1. 运行上述命令之一后，将设置环境变量并禁用复制工具的遥测。禁用遥测后，必须复制并重新运行复制工具脚本才能开始该过程。

## 复制工具反馈
<a name="troubleshooting-migration-tool"></a>

如果您遇到任何问题，或者想就使用复制工具的体验提供反馈，请创建支持案例并提交。有关创建支持案例的更多信息，请参阅 [Creating support cases and case management](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html)。

## AWS Cloud9 和 Amazon 之间的区别 CodeCatalyst
<a name="cc-differences-c9"></a>

下表概述了两者 AWS Cloud9 之间 AWS Cloud9 的一些区别 CodeCatalyst。


| AWS Cloud9 | AWS Cloud9 在亚马逊上 CodeCatalyst | 
| --- | --- | 
|  私有 VPC 非常适合使用 AWS Cloud9。  |  上目前不支持使用私有 VP AWS Cloud9 C CodeCatalyst。  | 
|  AWS Cloud9 支持预配置的 AWS 托管凭证。  |  需要为开手动配置凭证 CodeCatalyst。 AWS Cloud9   | 
|  间隔可以在 30 分钟到 7 天之间，也可以使用 AWS Cloud9禁用关机。  |  开启间隔可能为 15 分钟到 20 小时， CodeCatalyst 并且您无法禁用关机。 AWS Cloud9   | 
|  AWS Cloud9 支持 Ubuntu 和 AL2 操作系统平台。  |  AWS Cloud9 on CodeCatalyst 支持 MDE 通用镜像和自定义镜像，其中可以包含 Ubuntu 和。 AL2有关这方面的更多信息，请参阅 *Amazon CodeCatalyst 用户指南*中的[通用开发文件镜像](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-universal-image.html)。  | 
|  中支持上传和下载 AWS Cloud9  |  on 目前不支持上传和 AWS Cloud9 下载 CodeCatalyst。用户需要使用 Amazon S3 存储桶进行上传和下载。  | 
|  协作可用于 AWS Cloud9  |  协作功能目前不可用 AWS Cloud9 CodeCatalyst。  | 

# FAQs 关于复制过程
<a name="faqs-replication-tool"></a>

以下部分旨在回答与复制工具和复制过程 FAQs 有关的一些问题。

 **问题：**如果我在上复制我的 AWS Cloud9 环境 CodeCatalyst，我的 AWS Cloud9 环境会受到影响吗？

 **答：**不是，您的环境的复制只会将您的代码资源复制到， AWS Cloud9 以便您 CodeCatalyst 能够继续工作。您的代码资源和开启的环境 AWS Cloud9 不会受到任何影响。

 **问题：**如果我想回滚，我的 AWS Cloud9 环境会受到影响吗？

 **答：**不，您可以删除 CodeCatalyst 开发环境、源存储库、项目和空间，它不会对您的 AWS Cloud9 环境产生任何影响。

 **问：**新位置是否符合 HIPAA、SOC 等标准？

 **答案：**开启的开发环境 CodeCatalyst 目前不符合这些标准。这些标准的合规性已列入规划路线图。

 **问：**我的代码资源会去哪里？

 **答：**您的代码资源将被复制到项目中的源存储库中 CodeCatalyst。

 **问：**使用会受到限制吗？

 **答：**在复制过程中，您在免费套餐内可以创建 16 GB 的开发环境。这意味着您最多可以拥有 4 个开发环境。有关定价、存储空间和不同可用套餐的更多信息，请参阅 [Amazon CodeCatalyst -定价](https://codecatalyst.aws/explore/pricing)。

 **问：**我的计算将去哪里？

 **答：**您的现有计算不会发生任何变化。它将保持原样。

 **问题：**我能否在中 CodeCatalyst使用我现有的 AWS 账户凭证？这些凭证会被自动转移吗？

 **答：**您可以在中手动配置您的 AWS 账户凭证 CodeCatalyst。它们不会自动转移。

 **问：**这项服务要花多少钱？

 **答：**您可以免费开始 CodeCatalyst使用。有关定价和不同可用套餐的更多信息，请参阅 [Amazon CodeCatalyst -定价](https://codecatalyst.aws/explore/pricing)。

 **问题：**数据复制过程和数据存储是否 CodeCatalyst 安全？

 **答：**是的，我们会将 git push 与 https to copy代码资源一起使用，并将数据 CodeCatalyst 安全地存储在服务中。静态和传输中的所有数据均加密。有关数据保护的更多信息 CodeCatalyst，请参阅《[亚马逊* CodeCatalyst 用户指南》 CodeCatalyst中的 “亚马逊*数据保护](https://docs.aws.amazon.com/codecatalyst/latest/userguide/data-protection.html)”。

 **问：**我应该选择哪种复制方法？

 **答：**复制工具提供了两种方法；您可以 CodeCatalyst 通过将代码资源推送 AWS Cloud9 到单个 CodeCatalyst 源存储库来将其从复制到，或者将每个子文件夹转换为不同的 CodeCatalyst 源存储库。我们建议使用第一种方法，因为它不需要事先了解源存储库等 CodeCatalyst 概念。这种方法是探索 AWS Cloud9 体验的好起点 CodeCatalyst，同时使用你习惯的类似设置 AWS Cloud9。

当您单独使用位于根 AWS Cloud9 环境文件夹下的子文件夹时，最好选择第二个选项。使用这种方法，根文件夹下的所有文件都不会被复制。有关中源存储库的更多信息 CodeCatalyst，请参阅 *Amazon CodeCatalyst 用户指南 CodeCatalyst*[中的源存储库](https://docs.aws.amazon.com/codecatalyst/latest/userguide/source.html)。

 **问：**复制过程中生成的个人访问令牌是什么？我为什么需要它？ 如果丢失了还能重新生成吗？

 **答案：**个人访问令牌与您的用户身份相关联 CodeCatalyst。使用 git 将本地更改推送到 CodeCatalyst 源存储库时，需要将其作为密码。有关令牌及其生成方法的更多信息，请参阅《亚马逊* CodeCatalyst用户指南》*[中的在亚马逊 CodeCatalyst管理个人访问令牌](https://docs.aws.amazon.com/codecatalyst/latest/userguide/ipa-tokens-keys.html)。

 **问：**如果在复制过程中出现错误会怎样？

 **答：**如果在使用复制工具时出现错误，请先重试该工具。如果错误与源存储库有关，则可以在复制代码资源后将其手动推送到 CodeCatalyst 源存储库。这应该可以正常工作，因为本地存储库已经配置为与 CodeCatalyst 上游配合使用。如果问题仍然存在，请创建支持案例并提交。有关创建支持案例的更多信息，请参阅 [Creating support cases and case management](https://docs.aws.amazon.com/awssupport/latest/user/case-management.html)。

 **问题：**为什么我需要使用我的 B AWS uilderID 对复制工具进行身份验证和授予权限？

 **答：**在复制过程中，复制工具需要代表用户读取和写入多个资源（项目、开发环境、源存储库） CodeCatalyst 并复制本地内容，因此需要您的许可才能执行此操作。

 **问题：**如果我移至，延迟会有变化 CodeCatalyst吗？

 **答：**根据您正在执行的操作，延迟可能会减少。这是因为 CodeCatalyst 服务器托管在 PDX 区域。

 **问：**我安装的所有软件都会转移吗？

 **回答：**不会，只会转移您的代码资源。二进制文件、配置和已安装的软件不会被传输。

# Amazon 中的开发环境 CodeCatalyst
<a name="devenvironment-cloud9.title"></a>

以下各节概述了如何 CodeCatalyst 使用 AWS Cloud9 IDE 创建和管理开发环境。
+ [创建开发环境](#ide-toolkits-create-cloud9)
+ [打开开发环境设置](#ide-toolkits-settings-cloud9)
+ [恢复开发环境](#ide-toolkits-resume-cloud9)
+ [删除开发环境](#ide-toolkits-delete-cloud9)
+ [编辑开发环境的存储库 devfile](#ide-toolkits-edit-devfile-cloud9)
+ [克隆存储库](#ide-toolkits-clone-cloud9)
+ [对开发环境进行故障排除](#cloud9-devenvironment-troubleshoot)

## 创建开发环境
<a name="ide-toolkits-create-cloud9"></a>

您可以通过多种方式创建开发环境：
+ 使用 “**摘要**”、“开发环境” 或 “ CodeCatalyst 源存储库” 页面中的 CodeCatalyst **源存储库**创建**开发环境**。
+ 创建一个未连接到开发环境中的 CodeCatalyst 源存储库的空开发环境。
+ 在您选择的 IDE 中创建开发环境，然后将 CodeCatalyst 源存储库克隆到开发环境中。

您可以为每个分支和存储库创建一个开发环境。一个项目可以有多个存储库。您的开发环境仅与您的 CodeCatalyst账户关联，并且只能由您的 CodeCatalyst 账户管理。你可以打开开发环境并使用任何支持的环境来使用它 IDEs。选择特定的 IDE 后，只能与所选 IDE 一起打开该开发环境。如果要使用其他 IDE，您可以通过在导航栏中选择该开发环境并选择**编辑**来更改 IDE，也可以通过创建新的开发环境来更改 IDE。默认情况下，系统使用双核处理器、4 GB RAM 和 16 GB 持久性存储创建开发环境。

有关如何在中创建开发环境的更多信息 CodeCatalyst，请参阅 *Amazon CodeCatalyst 指南*中的[创建开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-create.html)。

有关在中创建开发环境的信息和步骤 CodeCatalyst，请参阅 *Amazon CodeCatalyst 用户指南*中的[创建开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-create.html)。

**注意**  
您现在可以使用第三方源存储库创建开发环境。有关将第三方源存储库链接到其中的项目的信息 CodeCatalyst，请参阅 *Amazon CodeCatalyst 用户指南*中的[链接源存储库](https://docs.aws.amazon.com/codecatalyst/latest/userguide/source-repositories-link.html)。

**重要**  
开发环境可以通过有权访问您的 CodeCatalyst 凭据的开发文件运行脚本。在打开不受信任的资源之前，请检查存储库。

## 打开开发环境设置
<a name="ide-toolkits-settings-cloud9"></a>

在 CodeCatalyst 控制台中创建开发环境后，您可以查看特定的开发环境设置：

1. 在 CodeCatalyst 控制台中，通过 AWS Cloud9 IDE 导航到您的开发环境。

1. 从 AWS Cloud9 侧边栏中选择 **aws-explorer**。

1. 在**开发者工具**导航窗格中，展开**CodeCatalyst**并选择**打开设置**以打开**开发环境设置**视图。

1. 在**开发环境设置**视图中，以下部分包含开发环境的选项：
   + **别名：**查看和更改分配给您的开发环境的**别名**。
   + **状态：**查看您当前的开发环境状态、已分配给它的项目以及停止您的开发环境。
   + **Devfile：**查看开发环境的 Devfile 的名称和位置。选择**在编辑器中打开**可打开 Devfile。
   + **计算设置：**更改开发环境的大小和默认**超时长度**。

**注意**  
开发环境在创建之后就无法更改分配到其中的存储空间量。

**注意**  
在终端上使用亚马逊 CodeCatalyst AWS CLI 时，必须确保在运行任何 CodeCatalyst 命令之前设置了 *AWS\$1PROFILE=codecatalyst*。

## 恢复开发环境
<a name="ide-toolkits-resume-cloud9"></a>

开发环境 `$HOME` 目录中的所有内容都将持久存储。如果需要，您可以停止在开发环境中工作，并在以后恢复开发环境中的工作。如果开发环境处于空闲状态的时间达到了在创建开发环境时为**超时**字段选择的时间长度，此时会话将自动停止。

您只能从中恢复开发环境 CodeCatalyst。有关如何恢复开发环境的更多信息，请参阅 *Amazon CodeCatalyst 指南*中的[恢复开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-resume.html)。

**注意**  
恢复开发环境可能需要几分钟的时间。

## 删除开发环境
<a name="ide-toolkits-delete-cloud9"></a>

处理完存储在开发环境中的内容后，您可以将其删除。在删除开发环境之前，请确保提交代码更改并推送到原始源存储库。删除开发环境后，将停止对开发环境的计算和存储计费。

您只能从中的开发环境页面中删除**开发环境** CodeCatalyst。有关如何删除开发环境的更多信息，请参阅 *Amazon CodeCatalyst 指南*中的[删除开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-delete.html)。

## 编辑开发环境的存储库 devfile
<a name="ide-toolkits-edit-devfile-cloud9"></a>

要更改开发环境的配置，请编辑 devfile。您可以利用 devfiles 标准化整个团队的开发环境。您可以devfile从中源存储库的根目录进行编辑 CodeCatalyst。或者，您可以在支持的 IDE 中编辑 devfile。如果您在支持的 IDE 中编辑 devfile，请提交更改并将其推送到源存储库或创建拉取请求。这样，团队成员就可以审查和批准对 devfile 的编辑。

**注意**  
您只能在 devfile 中包含公共容器镜像。

**注意**  
如果缺少依赖项，则某些 AWS Cloud9 IDE 功能可能无法在自定义模式下运行devfile。要使它们在 Linux x64 以外的某些平台上运行，可能需要额外的工作。<a name="ide-toolkits-edit-devfile-cloud9-steps"></a>

**要在中编辑开发环境的存储库 devfile AWS Cloud9**

1. 在 CodeCatalyst 控制台中，通过 AWS Cloud9 IDE 导航到您的开发环境。

1. 从 AWS Cloud9 侧栏中选择 **aws-** explorer。

1. 在 “**开发者工具**” 导航窗格中，选择**CodeCatalyst 工具包**菜单。

1. 选择**打开 Devfile**。

1. 编辑 devfile，然后保存文件。

1. 选择**源代码控制**，这是菜单侧边栏中的 Git 扩展。

1. 在**消息**文本字段中，输入一条消息，然后暂存更改。

1. 要准备提交，请选择**暂存所有更改 (\$1)** 图标。

1. 要查看 Git 命令，请选择存储库名称旁边的**菜单**图标。

1. 选择**提交**和**推送**。

1. 从 AWS Toolkit 菜单中选择**更新开发环境**。

   选择**提交**和**推送**。已保存更新的 devfile，并且已提交并推送更改。

**注意**  
假设您想要使用自定义 devfile 启动的开发环境无法正常工作。这可能是因为 devfile 与 AWS Cloud9不兼容。要排除故障，请检查 devfile。如果问题仍然存在，请将其删除并尝试创建一个新 devfile。

您也可以通过devfile编辑开发环境的 CodeCatalyst。有关更多信息，请参阅 *Amazon CodeCatalyst 指南*中的[配置您的开发环境](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironment-devfile.html)。

## 克隆存储库
<a name="ide-toolkits-clone-cloud9"></a>

要有效地处理源存储库中的多个文件、分支和提交，可以将源存储库克隆到本地计算机上。然后，使用 Git 客户端或 IDE 进行更改。从 CodeCatalyst，您可以像使用任何其他Git主机提供程序一样使用 AWS Cloud9 IDE Git 扩展，也可以使用命令行。要了解如何克隆第三方存储库，请参阅 [Initialize or clone a Git repository](https://docs.aws.amazon.com/cloud9/latest/user-guide/using-gitpanel.html)。

有关从源存储库创建开发环境并使用其克隆的更多信息 CodeCatalyst，请参阅 *Amazon CodeCatalyst 指南*中的[源存储库概念](https://docs.aws.amazon.com/codecatalyst/latest/userguide/source-concepts-clone.html)。

## 对开发环境进行故障排除
<a name="cloud9-devenvironment-troubleshoot"></a>

如果您的开发环境遇到问题，请参阅 *Amazon CodeCatalyst 指南*中的[开发环境问题疑难解答](https://docs.aws.amazon.com/codecatalyst/latest/userguide/troubleshooting-devenvironments.html)。

**注意**  
在终端上使用亚马逊 CodeCatalyst AWS CLI 时，必须确保在运行任何 CodeCatalyst 命令之前设置了 *AWS\$1PROFILE=codecatalyst*。

如果您的开发环境遇到问题，请参阅 *Amazon CodeCatalyst 指南*中的[开发环境问题疑难解答](https://docs.aws.amazon.com/codecatalyst/latest/userguide/devenvironments-troubleshooting.html)。

# 在 AWS Cloud9 IDE AWS CDK 中使用
<a name="cdk-explorer"></a>

通过 **AWS CDK 服务**，您可以使用 [AWS Cloud Development Kit (AWS CDK)](https://aws.amazon.com/cdk/) 应用程序或*应用*。您可以在《[AWS Cloud Development Kit (AWS CDK) 开发人员指南](https://docs.aws.amazon.com/cdk/latest/guide/)》 AWS CDK 中找到相关的详细信息。

AWS CDK 应用程序由称为*[构造的构建块组成。](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html)*这些构造块包括 CloudFormation 堆栈的定义及其中的 AWS 资源。使用**AWS CDK 资源管理器**，您可以看到在 AWS CDK *树视图*中定义的[堆栈](https://docs.aws.amazon.com/cdk/latest/guide/stacks.html)和[资源](https://docs.aws.amazon.com/cdk/latest/guide/resources.html)。您可以在 AWS Cloud9 编辑器的 “开发者工具” 窗格中访问此视图。

本节提供有关如何在 AWS Cloud9 编辑器**AWS CDK **中访问和使用的信息。

# 使用 AWS CDK 应用程序
<a name="aws-cdk-apps"></a>

在 AWS Cloud9 集成开发环境 (IDE) 中使用**AWS CDK 资源管理器**对 AWS CDK 应用程序进行可视化和处理。

## 先决条件
<a name="aws-cdk-apps-prereq"></a>

安装 AWS CDK 命令行界面。有关说明，请参阅[《*AWS Cloud Development Kit (AWS CDK) 开发人员指南》*中的 AWS CDK 入门](https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html)。

**重要**  
您安装的 AWS CDK 版本必须是 1.17.0 或更高版本。您可以使用 **`cdk --version`** 命令检查您正在运行哪个版本。

## 可视化 AWS CDK 应用程序
<a name="aws-cdk-apps-visualize"></a>

使用 AWS Cloud9 IDE AWS CDK 资源管理器，您可以管理存储在[应用程序的 CDK 结构中的[堆栈](https://docs.aws.amazon.com/cdk/latest/guide/stacks.html)和资源](https://docs.aws.amazon.com/cdk/latest/guide/resources.html)。E AWS CDK xplorer 使用`tree.json`文件中定义的信息，以树状视图显示您的资源。此文件是当您运行 **`cdk synth`** 命令时创建的。原定设置情况下，`tree.json` 文件位于应用程序的 `cdk.out` 目录中。

要开始使用 Too AWS CDK lkit Explorer，请创建一个 CDK 应用程序。

1. 完成《AWS CDK 开发人员指南》中 [Hello World 教程](https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html#hello_world_tutorial)的前几个步骤。
**重要**  
当您到达**部署堆栈**步骤时，请停止并返回本指南。
**注意**  
您可以在操作系统命令行界面上或在 VS Code 编辑器内的 **Terminal**（终端）窗口中运行本教程中提供的命令，例如 **`mkdir`** 和 **`cdk init`**。

1. 完成 CDK 教程的所需步骤后，打开您在 AWS Cloud9 IDE 编辑器中创建的 CDK 内容。

1. 在 AWS 导航窗格中，展开 **CDK** 标题。您的 CDK 应用程序及其关联资源现在显示在 CDK Explorer 树视图中。您还可以在 AWS Cloud9 内的终端中运行以下命令来确认 CDK 功能正常运行：

   ```
   mkdir mycdkapp
   cd mycdkapp
   cdk init app --language=typescript
   cdk synth
   cdk bootstrap
   ```

### 重要提示
<a name="important-notes"></a>
+ 将 CDK 应用程序加载到 AWS Cloud9 编辑器中时，可以同时加载多个文件夹。每个文件夹可以包含多个 CDK 应用程序，如上图所示。 AWS CDK 资源管理器可在项目根目录及其直接子目录中查找应用程序。
+ 执行此教程的前几个步骤时，您可能会注意到所运行的最后一个命令是 **`cdk synth`**。此命令通过将您的 AWS CDK 应用程序转换为 CFN 来合成 CloudFormation模板。作为副产品，它还会生成 `tree.json` 文件。如果您对 CDK 应用程序进行了更改，请再次运行 **`cdk synth`** 命令以查看树视图中反映的更改。一个示例更改是向应用程序添加更多资源。

## 在 AWS CDK 应用程序上执行其他操作
<a name="aws-cdk-apps-other-tasks"></a>

您可以使用 AWS Cloud9 编辑器在 CDK 应用程序上执行其他操作，就像使用命令行界面一样。例如，您可以在编辑器中更新代码文件并使用 AWS Cloud9 **终端**窗口部署应用程序。

要尝试这些类型的操作，请使用 AWS Cloud9 编辑器继续*AWS CDK 开发者指南*中的 [Hello World 教程](https://docs.aws.amazon.com/cdk/latest/guide/getting_started.html#hello_world_tutorial)。确保执行最后一个步骤，即**销毁应用程序的资源**。否则，您的 AWS 账户可能会产生意料之外的费用。