通过CLI的AWS deplyong ECS服务

时间:2020-08-24 14:29:20

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

我想通过aws cli(在CI / CD的最后一步)部署(重新启动)我的ECS任务(启动类型为Fargate)。

与他们的问题在于,似乎我必须停止任务,并再次更新其状态。仍然可以,但是在以下命令中: aws --region regionName ecs stop-task --cluster example-cluster --task taskID,对于--task,我要么必须使用任务UUID,要么必须使用任务的ARN,但两者均未完全固定。 任务的UUID随每个修订版本而变化,并且ARN也是名称,其最后一部分是修订版本号。我可以用作ARN的标识符完全固定吗?

另外,例如在ARN中,如果我有nginx:4,则不能使用“ latest”代替4,这使得处理和自动化完全困难。

1 个答案:

答案 0 :(得分:1)

我找到了解决方案,使用*-task系列命令是一个错误。要部署服务,我们只需使用update-service命令,如下所示:

aws --region regionName ecs update-service --cluster clusterName --force-new-deployment --service serviceName

重点在于--force-new-deployment,此命令对不使用 CodeDeploy 的用户很有用。