Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 如何修复aws代码生成命令\执行\错误退出状态255_Amazon Web Services_Amazon Iam_Amazon Ecs_Aws Codebuild - Fatal编程技术网

Amazon web services 如何修复aws代码生成命令\执行\错误退出状态255

Amazon web services 如何修复aws代码生成命令\执行\错误退出状态255,amazon-web-services,amazon-iam,amazon-ecs,aws-codebuild,Amazon Web Services,Amazon Iam,Amazon Ecs,Aws Codebuild,Iam在我的buildspec.yml文件中配置CICD piepline usng aws services code build pilepileline等以更新ecs fargate群集中的deploymnet aws ecs cli命令无法抛出“命令执行错误:执行命令时出错:aws ecs更新服务--服务xxxxx。原因:退出状态255” 我已尝试使用“AmazonECS_FullAccess”策略为代码构建角色提供权限 错误代码255表示: 255--命令失败。CLI或向其发出请求的服

Iam在我的buildspec.yml文件中配置CICD piepline usng aws services code build pilepileline等以更新ecs fargate群集中的deploymnet aws ecs cli命令无法抛出“命令执行错误:执行命令时出错:aws ecs更新服务--服务xxxxx。原因:退出状态255”

我已尝试使用“AmazonECS_FullAccess”策略为代码构建角色提供权限

错误代码255表示:

255--命令失败。CLI或向其发出请求的服务引发了错误

正如您提到的,您已经提供了对CB角色的完全ECS访问,接下来您可以检查命令失败的原因:是ECS描述失败还是ECS更新服务失败?因为如果Fargate服务不稳定,将导致错误255

我建议:

1) 只需留下ecs descripe命令,看看是否有效


2) 如果(1)成功,然后,如果Fargate Taskdef有日志组条目,请执行ecs更新服务并在AWS ecs控制台和/或CW日志组中监控服务。

附加AmazonEC2ContainerRegistryPowerUser的策略为我解决了此问题。

您需要将管道的权限GetAuthorizationToken授予

ecr:*
而不是

ecr:repository/<you_repo>
ecr:repository/
因为

aws ecr get-login-password --region <aws_region>
aws ecr获取登录密码--区域
被判死刑

<account_id>.dkr.ecr.<aws_region>.amazonaws.com 
.dkr.ecr..amazonaws.com
而不是反对

<account_id>.dkr.ecr.<aws_region>.amazonaws.com/repository/<your_repo>
.dkr.ecr..amazonaws.com/repository/

我遇到了与您相同的问题,我的解决方法是:尝试使用CodeBuild,然后使用IAM角色。AmazonEC2ContainerRegistryFullAccess角色,现在单击该代码生成的“编辑”,选择“环境”,然后单击允许AWS代码生成修改此服务角色,以便可用于此构建项目。现在再试一次

在CodeBuild项目中使用PrivilegedMode模式。在docker容器中构建docker映像时需要该模式

干杯

<account_id>.dkr.ecr.<aws_region>.amazonaws.com/repository/<your_repo>