Docker ElasticBeanstalkをデプロイして.ebextensions/setup.configファイルを読み取るのに問題があります。
eb環境構成 のドキュメントによると:
ソースバンドルに1つ以上の構成ファイルを含めることができます。構成ファイルには、拡張子.config(myapp.configなど)を付けて名前を付け、ソースバンドルの.ebextensions最上位ディレクトリに配置する必要があります。
ただし、Dockerの場合、ソースバンドルは.Zip
または.war
ファイルではなく、.json
ファイルであるように見えます。たとえば、ドキュメントには Dockerrun.awsを作成する)と書かれています。 .json file —それがソースバンドルのように見えますか?
アプリのバージョンを作成する際に、カスタムDockerrun-$VERSION.aws.json
ファイルをs3にアップロードし、次のようなものを実行します($APP
はバージョン管理されたdockerrunjsonファイルです)。
aws elasticbeanstalk create-application-version \
--application-name $APP_NAME \
--version-label $VERSION \
--source-bundle S3Bucket=$S3_BUCKET,S3Key=$S3_PATH/$APP
では、「バンドル」が最終的にコンテナを構築するjsonファイルである場合、ソースバンドルの最上位ディレクトリで.ebextensionsディレクトリはどのように検出されるのでしょうか。 (私の最初の試みは、プロジェクトのルートに配置することでしたが、それは機能しませんでした。)
Dockerデプロイに.jsonファイルを使用している場合、.ebextensionsを使用することはできません。
ただし、.jsonと.ebextensionディレクトリを含むZipを作成することはでき、すべてが機能するはずです。生のjsonの代わりに、デプロイアーティファクトとしてZipを使用します。