【问题标题】:How to update container image in AWS Fargate如何在 AWS Fargate 中更新容器映像
【发布时间】:2018-06-14 11:01:47
【问题描述】:

我已将初始 docker 镜像推送到存储库并使用该镜像创建了 AWS Fargate,是否有任何方法可以更新该镜像,因为我的 docker 镜像中有某些更改。

【问题讨论】:

    标签: amazon-web-services amazon-ecs aws-fargate


    【解决方案1】:

    就这么简单:

    aws ecs update-service --cluster <cluster> --service <service> --force-new-deployment

    【讨论】:

    • 它将更改 IP,如果 Route 53 域指向以前的 IP - 它将停止工作。我应该将负载均衡器作为别名来防止它吗?
    【解决方案2】:

    AWS documentation:

    如果您已更新应用程序的 Docker 映像,则可以使用该映像创建新的任务定义并将其部署到您的服务。

    注意

    如果您更新的 Docker 映像使用与您的服务的现有任务定义中相同的标签(例如,my_image:latest),则无需创建任务定义的新修订。您可以使用以下过程更新服务,保留服务的当前设置,然后选择强制新部署。部署启动的新任务在启动时会从您的存储库中提取当前图像/标签组合。当您指定 LATEST 时,在更新 Fargate 任务以使用更新的平台版本时,也会使用强制新部署选项。例如,如果您指定 LATEST 并且您正在运行的任务使用 1.0.0 平台版本,并且您希望它们使用更新的平台版本重新启动。

    https://docs.aws.amazon.com/AmazonECS/latest/userguide/update-service.html#update-service

    【讨论】:

      【解决方案3】:

      创建新版本的任务定义并使用最新标签更新容器并更新服务。

      【讨论】:

        【解决方案4】:

        您可以在使用default-launch-type 作为应用程序的FARGATE 创建集群后编写配置文件,并在任务定义中定义相应的参数,即ecs-params.yaml

        这是存储在 Amazon ECR 中的 nginx:latest 图像的一个文件。

        version: '2'
        services:
          web:
            image: account-id.dkr.ecr.ap-southeast-1.amazonaws.com/nginx:latest
            ports:
              - "80:80"
            logging:
              driver: awslogs
              options:
                awslogs-group: awslogs-web
                awslogs-region: ap-southeast-1
                awslogs-stream-prefix: web-nginx
        

        您只需更改映像,就可以在更新集群内的服务时将更新后的映像放入部署中。

        如果您已更新应用程序的 Docker 映像,则可以使用该映像创建新的任务定义并将其部署到您的服务。服务调度程序使用最小健康百分比和最大百分比参数(在服务的部署配置中)来确定部署策略。

        注意:任务定义中的Execution Role 授予从容器注册表中提取图像的权限。

        您可以在此处找到文档指南,AWS ECS Update Service

        【讨论】:

        • 如 ECS 更新服务文档中所述,请注意,如果您的图像和任务定义使用与以前相同的标签(例如,最新),那么您只需更新 ECS 服务并检查“强制新部署”复选框,以便部署新映像。
        猜你喜欢
        • 2021-07-09
        • 2018-05-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-23
        • 2021-05-30
        • 1970-01-01
        相关资源
        最近更新 更多