開発中、JavaバックエンドAPIがあり、これをTomcatで実行しています。バックエンドをDockerコンテナーにラップしてAWS EC2インスタンスにデプロイし、スケーリングできるようにしたいのですが上下。
すべてのDockerコンテナーで個別のTomcatサーバーを実行する必要がありますか?私はそれを回避する方法を知りませんが、それはコンテナーあたりのオーバーヘッド(1 GB〜2 GBのメモリ、500 MBのディスク領域)のように思えます。
アプリをTomcatインスタンスにデプロイするのではなく、アプリ内で embedded Tomcatを使用することを検討してください。私はこのアプローチを一般的に好んでいますが、それは間違いなくマイクロサービスのアーキテクチャーとコンテナーとはるかに整合しています。
この場合、Dockerは必要ありません。
Tomcatはすでにコンテナー実行システムであり、複数の別個のWebサイトおよびAPIを実行できます