我有一个现有的 eb 应用程序+环境,可以通过上传 zip 存档来很好地部署。为了缩短开发/测试周期,我想使用git aws.push
在我现有的本地存储库上进行部署。
我创建了一个 IAM 用户并按照此处的 3 步说明进行操作 AWS Elastic Beanstalk - Using eb to attach git repo to existing EB environment作者:@aldrinleal。这就是 3 个步骤
- 安装开发工具
- 运行存储库设置
- git aws.config
所有 3 个步骤似乎都进展顺利。我输入了新 IAM 用户的安全凭证以及 eb 设置的应用程序+环境名称。
这是 git aws.push
这给我带来了很多麻烦。接下来是一系列权限错误,这本质上意味着我创建的 IAM 用户没有执行类似 cloudformation:GetTemplate, elasticbeanstalk:CreateStorageLocation, elasticbeanstalk:CreateApplicationVersion, ec2:DescribeImages, s3:CreateBucket
之类的操作的权限。还有更多。
我发现自己必须运行 git aws.push
,收到权限错误,然后更新 IAM 权限并重试。这不可能是通过 git 在 elastic beanstalk 上部署的正确方法。我是 aws 的新手,现在要学的东西太多,感觉有点不知所措。有人可以解释一下吗git aws.push
情况可以帮助我通过这个,以便我可以做进一步的实验和学习?
谢谢
最佳答案
听起来您应该使用现有的 IAM 策略,而不是在遇到问题时尝试构建策略。
为此,请转至 IAM Console然后转到您正在使用的用户。
单击用户,然后您将看到与该用户相关的所有信息。现在转到“附加用户策略”。它将打开一个窗口,让您选择策略模板、使用策略生成器或设置自定义策略。
我们将使用策略模板功能。接下来滚动列表,直到在列表中找到“AWS Elastic Beanstalk”。将有两个模板:
- AWS Elastic Beanstalk 完全访问权限
- AWS Elastic Beanstalk 只读访问
每个都有一个描述,因此您可以阅读每个的描述。基本上,完全访问模板是您使用提供 git aws.push
的 eb
cli 所需要的。
选择它,然后单击“应用策略”。
尝试再次运行 git aws.push
,如果您已正确配置所有内容以使用该用户,您应该不会遇到问题。
关于amazon-web-services - 通过 git aws.push 和 IAM 用户进行 Elastic beanstalk 部署的权限问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26376149/