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

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

第 2 步:创建 AppSpec 文件

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

创建 AppSpec 文件

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

  2. 根据您是使用 YAML 还是 JSON 创建的 AppSpec 文件,选择相应的选项卡,并将其内容复制到您刚刚创建的 AppSpec 文件中。对于 TaskDefinition 属性,请使用您在 第 1 步:更新您的 Amazon 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 文件中设置可选属性,以覆盖替换任务集的这些值。有关更多信息,请参阅 用于 Amazon ECS 部署部署的 AppSpec 的 “资源” 部分 Amazon ECS 部署 AppSpec 文件示例

  3. 将 AppSpec 文件上传到作为本教程先决条件而创建的 S3 存储桶。