步骤 2:创建 AppSpec 文件 - Amazon CodeDeploy
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

步骤 2:创建 AppSpec 文件

在本节中,您将创建 AppSpec 文件并将其上传到您在本先决条件节中创建的 Amazon S3 存储桶。Amazon ECS 部署 AppSpec 文件指定了您的任务定义、容器名称和容器端口。有关更多信息,请参阅 AppSpec Amazon ECS 部署的文件示例 AppSpec Amazon ECS 部署的 “资源” 部分

创建您的 AppSpec 文件
  1. 如果要使用 YAML 创建 AppSpec 文件,请创建一个名为appspec.yml的文件。如果要使用 JSON 创建 AppSpec 文件,请创建一个名为的文件appspec.json

  2. 根据您的 AppSpec 文件使用的是 YAML 还是 JSON,选择相应的选项卡,然后将其内容复制到刚刚创建 AppSpec 的文件中。对于 TaskDefinition 属性,请使用您在 步骤 1:更新您的亚马逊 ECS 应用程序 部分中记下的任务定义 ARN。

    JSON AppSpec
    { "version": 0.0, "Resources": [ { "TargetService": { "Type": "AWS::ECS::Service", "Properties": { "TaskDefinition": "arn:aws:ecs:aws-region-id:aws-account-id:task-definition/ecs-demo-task-definition:revision-number", "LoadBalancerInfo": { "ContainerName": "your-container-name", "ContainerPort": your-container-port } } } } ] }
    YAML AppSpec
    version: 0.0 Resources: - TargetService: Type: AWS::ECS::Service Properties: TaskDefinition: "arn:aws:ecs:aws-region-id:aws-account-id:task-definition/ecs-demo-task-definition:revision-number" LoadBalancerInfo: ContainerName: "your-container-name" ContainerPort: your-container-port
    注意

    替换任务集继承了原始任务集的子网、安全组、平台版本以及分配的公有 IP 值。您可以通过在 AppSpec 文件中设置替换任务集的可选属性来覆盖这些值。有关更多信息,请参阅 AppSpec Amazon ECS 部署的 “资源” 部分 AppSpec Amazon ECS 部署的文件示例

  3. 将您的 AppSpec 文件上传到您创建的 S3 存储桶,这是本教程的先决条件。