2015-06-18 5 views
13

У меня возникли проблемы с установкой моего докерного эластичного бобового стежка, чтобы прочитать мой файл .ebextensions/setup.config.Где разместить конфигурацию ebextensions в AWS Elastic Beanstalk Docker для развертывания с помощью пакета dockerrun?

Документация eb environment configuration говорит:

Вы можете включать в себя один или несколько файлов конфигурации с исходного пучка. Файлы конфигурации должны быть названы с расширением .config (например, myapp.config) и помещены в каталог верхнего уровня .ebextensions в вашем исходном пакете.

Однако это похоже на Докер, что источник пучка не .zip или .war файл, но .json файл, например, документы говорят на create a Dockerrun.aws.json file -И, похоже, что является источником пучка?

При создании версии приложения загрузить файл пользовательских Dockerrun-$VERSION.aws.json в s3 и запустить что-то вроде следующего (где $APP находится в версированном файле JSon dockerrun):

aws elasticbeanstalk create-application-version \ 
    --application-name $APP_NAME \ 
    --version-label $VERSION \ 
    --source-bundle S3Bucket=$S3_BUCKET,S3Key=$S3_PATH/$APP 

Итак ... как это. каталог ebextensions будет найден в каталоге верхнего уровня исходного пакета, когда «bundle» - это просто файл json, который заканчивает создание контейнера? (Моя первая попытка состояла в том, чтобы просто положить его в корень проекта, но это не сработало.)

ответ

17

Если вы используете .json-файл для развертывания докеров, вы не можете использовать .ebextensions.

Однако вы можете создать почтовый индекс, содержащий ваш .json и каталог .ebextension, и все должно работать. Используйте zip в качестве артефакта развертывания вместо raw json.

+1

Прохладный, работал отлично, я в свою очередь указывал на zip как на исходный пакет и содержал только файл 'Dockerrun.aws.json' и каталог' .ebextensions' с любыми конфигурационными файлами, которые я хотел. – MrColes

+0

У меня возникли проблемы с получением моего config.json с моими ключами на сервере без добавления его в git. Я полагаю, что он явно избегает этих, и я должен застегнуть его? –

+0

@MarkLester Я использую его, используя cli. Вы можете либо закрепить все это, либо добавить файл .ebignore и игнорировать все, что вы не хотите развернуть. Ebignore переопределяет gitignore, поэтому вам не нужно совершать вещи –