Amazon Elastic Beanstalk против экземпляра EC2 с докерными контейнерами

Если я правильно понимаю, Elastic Beanstalk создает экземпляр EC2 для каждого развертываемого вами приложения. Тем не менее, приложение обычно не работает на 100% CPU, но Amazon взимает плату за один экземпляр. Поэтому, если я развернул 5 приложений с Dockerfiles, AWS будет взимать плату за использование 5 экземпляров EC2 в месяц.

Имея это в виду, не могу ли я просто запустить EC2, установить докер и запустить там свои контейнеры? Разве это не было бы более рентабельным?

Ответы

Ответ 1

AWS интегрировала эластичный бобовый станок (EB) с EC2 Container Service (ECS) для поддержки многоконтейнерных докеровских сред. Среда EB, состоящая из нескольких экземпляров в группе автомасштабирования, может запускать несколько контейнеров на один экземпляр, управляемых через агент ECS и его API. Используйте .ebextensions для сопоставления нескольких слушателей ELB с контейнерами, запущенными в экземплярах EC2.

См. этот учебник для запуска Nginx + PHP-FPM в отдельных контейнерах.

Спасибо @Synturas за то, что он подтолкнул меня к этому обновлению.

Ответ 2

Да, ваши предположения верны. Разница в том, что для этого на EC2 вам придется самостоятельно управлять и контролировать свои контейнеры. Поэтому я предполагаю, что для производственных сред вам понадобится ваша собственная команда для этого, или же с BeanStalk.

Также лучше следуйте этой документации Docker on Amazon.