热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Codepipeline:权限不足无法使用AmazonS3对象密钥访问工件

如何解决《Codepipeline:权限不足无法使用AmazonS3对象密钥访问工件》经验,为你挑选了1个好方法。

您好我使用以下配置创建了一个codepipeline项目:

S3中的源代码来自Bitbucket.

使用CodeBuild构建,生成docker镜像并将其存储到Amazon ECS存储库中.

部署提供商Amazon ECS.

所有进程都可以正常工作,直到它尝试部署时,由于某种原因,我在部署期间遇到以下错误:

权限不足无法使用位于Amazon S3工件桶'codepipeline-us-west-2-913731893217'中的Amazon S3对象密钥"FailedScanSubscriber/MyAppBuild/Wmu5kFy"访问工件.提供的角色没有足够的权限.

在构建阶段,它甚至能够在ECS存储库中创建新的docker镜像.

我尝试了一切,改变了IAM角色和策略,添加了对S3的完全访问权限,我甚至将S3存储桶设置为公共,没有任何效果.我没有选择,如果有人可以帮助我那将是美好的,我对AWS的经验很差,所以任何帮助都表示赞赏.



1> Abraao Carmo..:

我找到了解决方案.真正的问题是,当部署提供程序设置为Amazon ECS时,我们需要生成一个输出工件,指示任务定义的名称和图像uri,例如:

post_build:
    commands:
      - printf '[{"name":"your.task.definition.name","imageUri":"%s"}]' $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG > imagedefinitions.json

artifacts:
    files: imagedefinitions.json


推荐阅读
author-avatar
x-诗儿_683
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有