Развертывание AWS EB из докера TypeError - PullRequest
0 голосов
/ 19 сентября 2018

Я пытаюсь развернуть свой код из экземпляра докера с помощью интерфейса командной строки AWS Elasticbeanstalk.Я получаю эту ошибку:

    $ 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

Мой config.yml выглядит так:

branch-defaults:
  default:
    environment: null
    group_suffix: null
  master:
    environment: my-env
global:
  application_name: myapp
  branch: null
  default_ec2_keyname: null
  default_platform: Docker 18.03.1-ce
  default_region: eu-west-2
  include_git_submodules: true
  instance_profile: null
  platform_name: null
  platform_version: null
  profile: eb-cli
  repository: null
  sc: git
  workspace_type: Application

Ответы [ 2 ]

0 голосов
/ 19 сентября 2018

Проблема в том, что в контейнере ~/.aws/credentials нет учетных данных AWS.Ваш Dockerfile должен добавить что-то вроде следующего к ~/.aws/credentials перед eb deploy:

[eb-cli]
aws_access_key_id = <AWS_ACCESS_KEY_ID>
aws_secret_access_key = <AWS_SECRET_ACCESS_KEY>
0 голосов
/ 19 сентября 2018

Не могли бы вы предоставить дополнительную информацию о вашей среде?Если я правильно понимаю, что установил ewscli в док-контейнер, затем запустил контейнер, подключился к нему и попытался запустить оттуда развертывание.

Не могли бы вы сказать мне: - какая у вас версия на python?- внутри контейнера настроен ли профиль AWS по умолчанию?

...