如何解决通过CLI的AWS deplyong ECS服务
我想通过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,这使得处理和自动化完全困难。
解决方法
我找到了解决方案,使用*-task
系列命令是一个错误。要部署服务,我们只需使用update-service
命令,如下所示:
aws --region regionName ecs update-service --cluster clusterName --force-new-deployment --service serviceName
重点在于--force-new-deployment
,此命令对不使用 CodeDeploy 的用户很有用。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。