LoginSignup
1
1

More than 3 years have passed since last update.

AWS BeanstalkでASP.NET Core 3.1アプリをデプロイする

Last updated at Posted at 2020-09-05

AWS Toolkit for Visual Studioを使う

AWS Toolkit for Visual Studioの機能で、プロジェクトをBeanstalk へ直接デプロイができます。

.ebextensionsや.platformを使う方法

どちらかというと、こちらが本題です。

Beanstalk へアプリの発行する際に、Beanstalk 環境への設定ファイル(.ebextensionsなど)を含めることができます。
https://docs.aws.amazon.com/ja_jp/toolkit-for-visual-studio/latest/user-guide/deployment-beanstalk-custom-netcore.html

環境変数や、ELB、オートスケール等の設定をファイルとして記述・管理することができるので、Webコンソールからポチポチする手間もありませんんし、できる限りこちらを使っていきたいところです。
デプロイするアプリケーションソースバンドルにも設定ファイルを含める必要があります。

.NET Core上の話ですが、単にプロジェクトの直下に.ebextensionsなどのディレクトリを追加しても、アプリケーションソースバンドルには含まれません。(S3にアップロードされたソースバンドルのZipファイルを見ると、含まれていないことがわかります)
アプリケーションソースバンドルに設定ファイルを含めるには、設定ファイルに対して「出力ディレクトリにコピーする」ように設定が必要です。

ちなみに、AWSの公式ドキュメントでも「project.jsonに記載する」と解説されていますが、これは以前バージョンの.NET Coreを前提としていますので、3.1では設定方法が異なります。

Visual Studioのオプションのペインからも設定できますが、.csprojファイルに直接書くならこんな感じになります。

    <Content Include=".ebextensions\00-environment-variables.conf">
      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
    </Content>

※ AWSの公式ドキュメントも早く新しい.NET Coreのバージョンに対応して欲しいです…

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1