将 Web 应用程序部署到 Amazon ECS - 适用于 .NET 的 AWS 开发工具包
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

将 Web 应用程序部署到 Amazon ECS

这是适用于预览版中功能的预发行文档。本文档随时可能更改。

本教程介绍Amazon ECS使用 对 进行部署AWS Fargate。本教程使用部署工具提供的默认值。

Prerequisites

  • 您已完成环境设置工具设置

  • [default] 凭证配置文件具有所需的权限。

  • Docker 已安装且正在运行,但此教程中没有 Dockerfile。

Deploy

当您首次准备好将应用程序部署到 AWS 时,您可以在此处开始操作。

使用 将示例 Web 应用程序部署到 Amazon ECS AWS Fargate

  1. 转到要在其中工作的目录并创建基本 Web 应用程序:

    dotnet new webapp --name SimpleWebAppForECS

  2. 转到应用程序目录:

    cd SimpleWebAppForECS

  3. 运行部署工具:

    dotnet aws deploy

  4. Name the AWS stack to deploy your application to 中,按 Enter 键接受默认名称。如果存在现有堆栈,则将显示选择要改为将应用程序部署到的 AWS 堆栈。在这种情况下,请选择 Create new (新建) 的最后一个选项,然后按 Enter 键以接受默认名称。

  5. 对于下一个查询,选择部署选项,选择使用 FargateAmazon ECS 的选项,然后按 Enter 键。在本教程中,这是第二个选项(在 Additional Deployment Options (其他部署选项) 下),而不是默认值。

    注意

    部署实际应用程序时,如果部署工具找到项目的 Dockerfile,它将显示使用 Fargate 作为默认选项的 Amazon ECS。如果项目没有 Dockerfile,但您使用 Fargate 选项选择 Amazon ECS,则该工具会生成 Dockerfile。

  6. 再次按 Enter 键接受应用程序和堆栈设置的默认值并开始部署。在本教程中,由于未找到项目的 Dockerfile 但已选择使用 Fargate 选项的 Amazon ECS,因此该工具还会生成一个 Dockerfile。

  7. 等待部署过程完成。

  8. 在工具输出的末尾,您会看到以下行:“SimpleWebAppForECS.FargateServiceServiceURL...". 此行包含生成的网站的 URL。在 Web 浏览器中打开 URL 以查看生成的网站。目前保持此网站处于打开状态。

  9. 如果要查看该工具创建的资源,请通过 Amazon ECSecs/ https://console.amazonaws.cn/打开 控制台。如有必要,选择适当的 AWS 区域。在 Clusters (集群) 页面上,您可以看到创建的新集群SimpleWebAppForECS

更新和重新部署

现在,您已部署一个应用程序并可以查看生成的网站,接下来需要对内容进行一些更改,然后重新部署应用程序。

更改 Web 内容并重新部署应用程序

  1. 在教程项目的 Pages 子目录中Index.cshtml,在文本编辑器中打开 。

  2. 对 HTML 内容进行一些更改并保存该文件。

  3. 在项目的主目录中,再次运行部署工具:

    dotnet aws deploy

  4. Select the AWS stack to deploy your application to 中,选择与本教程对应的堆栈名称,然后按 Enter 键。在本教程中,这是 SimpleWebAppForECS并且是默认选择。

  5. 再次按 Enter 键接受与之前相同的默认值并等待应用程序重新部署。

  6. 刷新应用程序的网站以查看您的更改。

Cleanup

为避免意外成本,请确保在使用完本教程的集群、任务和 ECR 存储库后将其删除。

您也可以使用 Amazon ECSecs/ https://console.amazonaws.cn/上的 控制台手动执行此清除。

删除教程构件

  1. 获取现有云应用程序的列表:

    dotnet aws list-deployments

    该列表包含本教程的部署:SimpleWebAppForECS

  2. 删除部署:

    dotnet aws delete-deployment SimpleWebAppForECS

  3. 输入“y”以确认删除并等待删除部署。

  4. Amazon ECS 控制台中,查看 Clusters (集群) 和 Task Definitions (任务定义) 页面以验证教程部署是否已删除。

  5. (可选)在 Amazon ECR 存储库页面上,您可以删除为本教程创建的存储库: simplewebappforecs

  6. 刷新在教程中创建的网站,以验证它是否不再可用。