AWS - ECS - 如何在现有 ECS(具有 1 个 EC2)实例上重新部署更新的 Docker 映像?

tm1*_*701 10 amazon-web-services amazon-ecs

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

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

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

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

Rex*_*Lam 11

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

  1. 确保您的服务有足够的空间来部署新任务,例如,如果您想要的Number of tasks是 1,那么您必须将 设置Maximum percent为 200,这意味着您可以在执行此操作的同时允许 1 * 200% = 2 个任务同时运行部署,然后只需键入以下命令: aws ecs update-service --cluster <cluster name> --service <service name> --force-new-deployment

  2. 或者在您将映像更新为 ECR 后,您可以手动终止现有任务并创建一个新任务(通常创建过程应由 ECS 本身完成,只要您的自动缩放配置设置正确)。