在 AWS 中部署一个容器实例

亚马逊弹性容器服务(亚马逊 ECS)是一种高度可扩展、快速的容器管理服务,使运行、停止和管理容器变得简单。 您可以通过在 AWS Fargate 上启动您的服务或任务,将您的容器托管在由 Amazon ECS 管理的无服务器基础设施上。 有关 Fargate 的更多信息,请参阅亚马逊 ECS 的 AWS Fargate.

步骤1:登录AWS账户

登录 AWS 门户。

如果您还没有AWS账户,请按照以下步骤创建一个:打开https://portal.aws.amazon.com/billing/signup.

步骤2:创建一个虚拟私有云

您可以使用Amazon Virtual Private Cloud(亚马逊 VPC)要在您定义的虚拟网络中启动AWS资源。 我们强烈建议您在VPC中启动容器实例。

如果您有默认的 VPC,可以跳过此部分,直接进入下一个任务:创建安全组。要确定是否拥有默认 VPC,请参见 Amazon EC2 用户指南中的 Amazon EC2 控制台支持的平台。否则,您可以使用以下步骤在您的账户中创建一个非默认 VPC。

有关如何创建VPC的信息,请参阅Amazon VPC用户指南中的仅创建VPC部分,并使用以下表格来确定选择哪些选项。

选项 值


资源来创建 VPC 仅限

Name 可选地为您的VPC提供一个名称。

IPv4 CIDR 块 IPv4 CIDR 手动输入
CIDR 块大小必须在 /16 到 /28 之间。

IPv6 CIDR 块 没有 IPv6 CIDR 块

租赁 默认

有关Amazon VPC的更多信息,请参阅什么是Amazon VPC? 在Amazon VPC用户指南中。

步骤3:创建一个安全组

安全组充当关联容器实例的防火墙,在容器实例级别控制进出流量。 您可以向安全组添加规则,使您能够使用 SSH 从您的 IP 地址连接到您的容器实例。 您还可以添加规则,允许来自任何地方的入站和出站 HTTP 以及 HTTPS 访问。 添加任何由您的任务所需的开放端口规则。 容器实例需要访问外部网络才能与Amazon ECS服务端点通信。

有关如何创建安全组的信息,请参阅Amazon EC2用户指南中的创建安全组,并使用以下表格确定选择哪些选项。

选项 值


Region 您创建密钥对的相同区域

Name 方便您记住的名称,例如 ecs-instances-default-cluster

VPC 默认的 VPC(标有"(默认)"
备注
如果您的账户支持 Amazon EC2 Classic,请选择您在上一任务中创建的 VPC

步骤4:创建一个ECS集群

在 AWS 门户主页的搜索框中搜索“ECS”并选择“Elastic Container Service”。 或在控制台中打开https://console.aws.amazon.com/ecs/v2. 搜索 ECS选择 "创建群集"。 创建集群输入“Cluster name”。 仅选择“AWS Fargate”。(无服务器)基础设施部分的""。 创建群组值将其他值保留为默认值,然后选择 创建

步骤5:创建任务定义

集群创建后,选择任务定义。 创建任务定义选择创建新任务定义,然后选择创建新任务定义。 创建新任务定义任务定义配置部分,输入任务定义系列的值。 任务定义配置部分基础设施要求部分,输入以下值用于启动类型CPU内存任务角色任务执行角色

  • 启动类型:仅限 AWS Fargate
  • CPU:1 vCPU
  • 内存:2 GB
  • 任务角色:ecsTaskExecutionRole
  • 任务执行角色:ecsTaskExecutionRole 基础设施要求容器 - 1部分,输入以下值,包括名称图像 URI容器端口端口名称环境变量

  • mycontainer
  • 图像 URI: ironsoftwareofficial/ironsecuredoc 获取最新版本或通过标签指定 ironsoftwareofficial/ironsecuredoc:2024.7.1
  • 容器端口:8080
  • 端口名称:8080
  • 添加环境变量:

    • 环境:Production
    • HTTP_PORTS:8080
    • IronSecureDoc_LicenseKey:YOUR-LICENSE-KEY

    对于 IronSecureDoc_LicenseKey,我们不建议将其直接添加到环境变量中,以确保安全。 我们建议从加密的Amazon S3存储桶中检索环境文件,参见将敏感数据传递到 Amazon ECS 容器. 集装箱部分将其他值保留为默认值,然后选择 创建

步骤 6: 创建服务

返回群集页面 > 选择您的群集(IronSecureDoc). 选择您的群组选择标签服务 > 然后选择创建。 创建服务环境部分,为计算选项启动类型输入以下值。

  • 计算选项:选择 启动类型
  • 启动类型:选择 FARGATE 服务环境部署配置部分,为应用类型版本服务名称期望任务输入以下值。

  • 应用类型:选择服务
  • 任务定义:
    • 家庭:选择已创建的任务定义 ironsecuredoc
    • 修订:选择任务定义版本1(最新)
  • 服务名称:myservice
  • 所需任务:1 服务部署配置请注意,对于网络连接,如果不存在,您可能需要创建VPC安全组

将其他值保留为默认值,然后选择 创建

部署开始时,会出现一个通知,表明部署正在进行中。 当服务部署后会显示另一个通知。

查看您的服务 > 然后打开任务。 打开已创建的任务在 "任务配置 "中,您可以使用公共 IP 运行 curl 命令来检查 API 是否正常工作,该命令应返回 "pong"。

curl http://18.118.166.206:8080/v1/document-services/ping

公共 IP祝贺! 通过配置仅几个设置,您已在Amazon Elastic Container Service中部署了一个公开可访问的应用程序。