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.