我无法使用docker弹性beanstalk部署来读取我的.ebextensions / setup.config文件。
eb environment configuration的文档说:
您可以在源包中包含一个或多个配置文件。配置文件必须使用扩展名.config命名(例如,myapp.config),并放在源包中的.ebextensions顶级目录中。
但是对于Docker来说,源包不是.zip
或.war
文件,而是.json
文件,例如文档对create a Dockerrun.aws.json file说 - 它看起来像源包?
在创建应用版本时,我将自定义Dockerrun-$VERSION.aws.json
文件上传到s3,运行如下所示(其中$APP
是版本化的dockerrun json文件):
aws elasticbeanstalk create-application-version \
--application-name $APP_NAME \
--version-label $VERSION \
--source-bundle S3Bucket=$S3_BUCKET,S3Key=$S3_PATH/$APP
那么......当“bundle”只是一个最终构建容器的json文件时,如何在源包的顶级目录中找到.ebextensions目录? (我的第一次尝试就是把它放在项目的根目录中,但这不起作用。)
答案 0 :(得分:21)
如果您使用.json文件进行docker部署,那么就不能使用.ebextensions。
但是,您可以创建一个包含.json和.ebextension目录的zip,一切都应该有效。使用zip作为部署工件而不是原始json。