Windowsのコンテナ化について調べたことメモ
- 2020.08.23
- Docker
現状Windows Serverで動いているC#のアプリケーションをコンテナ化したいという要望があり、その際Windowsコンテナについて少し調べたのでメモ。Windows系の知識が全然ないので、認識が誤っていたらコメントいただけるとありがたいです。
前提
C#を実行するフレームワークによって、以下のようにOSの制約があります。
- .NET Framework:Windows上でしか動かない→Windowsコンテナのみ
- .NET Core:マルチプラットフォーム(Linux,mac,Windows)で動く→Linuxコンテナも可
.NET Frameworkはメジャーアップデートがすでに終了しているようで、最近採用が多いのは.NET Coreのようです。
したがって、Windowsコンテナの採用が必須なのは、.NET Framework上でアプリケーションを動かしたい要望がある時のみの認識。
Windowsコンテナのメリット・デメリット
メリット
- .NET Framework上で動いている既存システムをコンテナ化する場合、アプリへの影響が少ない
デメリット
- Fargateで動かない(=EC2の管理が必要になる)
- Windowsコンテナを使ったアプリが現時点少数派のため、情報が少ない
- CI/CDの環境を選ぶ(CodeBuildはビルド用のWindowsイメージを自分で作ることでビルド可能)
-
前の記事
Supervisorを使ってDockerで複数プロセスを起動 2020.08.22
-
次の記事
CodeBuildでクロスアカウントのs3にアクセスする 2020.09.05