Amazon web services AWS EB从docker部署类型错误
我正在尝试使用AWS Elasticbeanstalk CLI从docker实例内部部署代码。我得到这个错误:Amazon web services AWS EB从docker部署类型错误,amazon-web-services,docker,amazon-elastic-beanstalk,Amazon Web Services,Docker,Amazon Elastic Beanstalk,我正在尝试使用AWS Elasticbeanstalk CLI从docker实例内部部署代码。我得到这个错误: $ eb deploy my-env Traceback (most recent call last): File "/usr/local/bin/eb", line 11, in <module> sys.exit(main()) File "/usr/local/lib/python2.7/dist-packages/ebcli/core/eb
$ eb deploy my-env
Traceback (most recent call last):
File "/usr/local/bin/eb", line 11, in <module>
sys.exit(main())
File "/usr/local/lib/python2.7/dist-packages/ebcli/core/ebcore.py", line 142, in main
ebrun.run_app(app)
File "/usr/local/lib/python2.7/dist-packages/ebcli/core/ebrun.py", line 74, in run_app
io.log_error(e.__class__.__name__ + " - " + e.message)
TypeError: cannot concatenate 'str' and 'ProfileNotFound' objects
你能提供一些关于你的环境的额外细节吗?如果我理解正确,我已经在docker容器中安装了ewscli,然后启动容器,连接到它并尝试从那里运行部署 你能告诉我: -你的python版本是什么?
-在容器内,是否配置了默认的AWS配置文件?问题是容器内的
~/.AWS/credentials
中没有AWS凭据。您的Dockerfile需要在eb部署之前向~/.aws/credentials
添加以下内容:
[eb-cli]
aws_access_key_id = <AWS_ACCESS_KEY_ID>
aws_secret_access_key = <AWS_SECRET_ACCESS_KEY>
[eb cli]
aws\u访问\u密钥\u id=
aws\u密码\u访问\u密钥=
更新2019年后查看此信息的任何人尝试不在docker容器中传递凭据,通过任务定义角色传递IAM权限
注册任务定义时,可以为IAM角色提供任务角色,该角色允许任务权限中的容器代表您调用其关联策略中指定的AWS API。有关更多信息,请参阅任务的IAM角色。-
[eb-cli]
aws_access_key_id = <AWS_ACCESS_KEY_ID>
aws_secret_access_key = <AWS_SECRET_ACCESS_KEY>