При первоначальном создании среды с использованием eb create расширения не отражаются
Ниже приведена настройка приложения, которое запускает докер-контейнер в эластичный стебель.
шаг 1:
создал родительскую папку, скажем, apptest, и внутри нее я разместил приложение узла Dockerfile, package.json и небольшой hello world server.js.
шаг 2:
внутри родительской папки apptest
управлял командой eb init
который создал скрытую папку .elasticbeanstalk
с config.yml
содержит настройки по умолчанию.
шаг 3:
добавленной .ebextensions
с файлом конфигурации 01_run.config
, содержащий приведенную ниже конфигурацию для обновления типа экземпляра.
option_settings:
aws:autoscaling:launchconfiguration :
InstanceType : "m4.xlarge"
Обратите внимание, что до сих пор среда не создана. И так как у меня созданы расширения, следует переопределить значения по умолчанию с типом экземпляра, указанным на m4.xlarge
,
шаг 4:
Теперь запустил команду eb create apptest-dev
(скажем, например) и создал среду
Проблема:
когда среда создана, у нее не было m4.xlarge
скорее создан с типом экземпляра по умолчанию как t2.micro
, Но когда вы загрузили в консоль заархивированную версию содержимого этой папки (исключая папку.elasticbeanstalk), ebextensions
Конфигурация папки подобрана. Это только с option_settings
не получаю работу, но другие ресурсы, такие как files
, commands
отражаются как из командной строки, так и из загрузки файла.
Я чувствую что-то вроде мелочей, чего не могу понять из блогов и документации. Спасибо за помощь заранее.
1 ответ
В течение eb create
EBCLI передает свои собственные значения по умолчанию для многих параметров настройки, среди которых тип экземпляра. Поскольку EBCLI не анализирует.ebextensions, а служба Beanstalk предпочитает значения по умолчанию, передаваемые EBCLI, тип экземпляра, указанный в ваших.ebextensions, не учитывается.
Есть два способа обойти это:
- вызов
eb config
послеeb create
, В интерактивном режиме измените тип экземпляра, сохраните и выйдите. - вызов
eb create
какeb create -i m4.xlarge