amazon-web-services - AWS-ECS-如何在现有ECS(带有1个EC2)实例上重新部署更新的Docker镜像?

标签 amazon-web-services amazon-ecs

首先,我在AWS中创建了一个包含Docker镜像的存储库。

然后,我创建了一个任务定义和一个ECS/EC2集群。最后,我使用集群和任务定义创建了服务。工作良好。

如何在现有集群上重新部署更新的Docker镜像?

仅使用新的(或现有的)任务“更新”服务不起作用。即使使用“强制新部署”选项也无效。

最佳答案

如果您未在容器定义中指定ECR图像的标签,它将始终获取最新的标签。因此,您有两种方法可以实现重新部署。

  • 确保您的服务有足够的空间来部署新任务,例如,如果所需的Number of tasks为1,则必须将Maximum percent设置为200,这意味着您可以允许1 * 200%= 2个任务同时运行在进行部署时,只需键入以下命令:aws ecs update-service --cluster <cluster name> --service <service name> --force-new-deployment
  • 或在将镜像更新为ECR之后,您可以手动杀死现有任务并创建一个新任务(通常,创建过程应由ECS本身完成,只要正确设置了自动缩放配置即可) 。
  • 关于amazon-web-services - AWS-ECS-如何在现有ECS(带有1个EC2)实例上重新部署更新的Docker镜像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53949706/

    相关文章:

    date - DynamoDB 最高效的日期类型

    amazon-web-services - AWS 上的 Docker - Elastic Beanstalk 和 ECS 之间有什么区别?

    amazon-web-services - 服务更新完成后 ECS 收到通知吗?

    laravel - 在Docker之后运行的Nginx上的随机502/503错误(在ECS群集+ ALB上)

    javascript - Dynamodb错误: Scan Results don't filter to HASH even though I put in an Actual entry ID

    amazon-web-services - Amazon S3 限制对移动应用程序上特定 HTTP 引荐来源网址的访问

    php - XML 与平面文件上传的 Amazon MWS 性能对比

    amazon-web-services - Strapi v3.0.0.alpha.12.4不适用于AWS

    amazon-web-services - AWS Fargate 和多容器 Elastic Beanstalk 之间的区别?

    amazon-web-services - 如何为模板中的堆栈中创建的参数赋予值?