Учитывая настройку:
- Приложение разработано локально и размещено в частном реестре EC2 Container Registry.
- Набор Elastic Beanstalk с хостом Docker.
Чтобы развернуть мое приложение, воспользуйтесь руководством по одному контейнеру. говорит сделать файл Dockerrun.aws.json
.
В руководстве Elastic Beanstalk также говорится что для использования изображений из (любого) частного репозитория необходимо добавить файл учетных данных (с токеном аутентификации и адресом электронной почты) в корзину S3.
Аутентификация в реестре контейнеров EC2 включает запрос токена, который docker login
можно использовать, но она действительна только в течение 12 часов.
Итак, теоретически я могу следовать руководству Elastic Beanstalk и использовать команду aws ecr get-login
, docker login ...
, чтобы заставить Docker создать нужный мне файл конфигурации, преобразовать его в файл .dockercfg
и поместить на S3.
Если я затем загружу свой файл Dockerrun.aws.json
в качестве новой версии приложения в Elastic Beanstalk, я смогу развернуть его прямо сейчас, если не прошло 12 часов.
Меня беспокоит, что произойдет после этих 12 часов? Если Elastic Beanstalk потребуется автоматически масштабировать мое приложение и запустить больше экземпляров, попытка использовать учетные данные, хранящиеся в S3, завершится ошибкой. Или, если я понимаю, что мне нужно вернуться к предыдущей версии моего приложения, я не могу просто сделать это через список прошлых версий приложения Elastic Beanstalk; Мне нужно быть на машине с установленным интерфейсом командной строки AWS и снова танцевать aws ecr get-login
, docker login ...
, загружать в S3?
Есть ли менее хрупкий способ настроить аутентификацию между Elastic Beanstalk и реестром контейнеров EC2, чтобы 12-часовой тайм-аут не был проблемой?
Dockerrun.aws.json
, но эта версия также требует, чтобы параметрauthentication
указывал на статический файл конфигурации, размещенный на S3, поэтому не знаете, как это решает проблему? - person MidnightLightning   schedule 16.06.2016Does Amazon ECR work with AWS Elastic Beanstalk?
.aws.amazon.com/ecr/faqs - person Shibashis   schedule 16.06.2016