2021年1月10日日曜日

ECS(コンテナ間連携について)

nginxとSpringBoot(tomcat)のコンテナを連携した設計を行ってみる。


①内部ALBを用意する
②Route53を用意
  - 内部用の新規ホストを用意:test.localにする
  - CNAME:①で登録したALBを記載する 

イメージ:
[nginx: リバースプロキシ①]
—>[内部ALB]——>[springboot:Java]




1)以下の公式ページからソースを落としてきてdockerを作成する。

①ソースをダウンロードする。

git clone https://github.com/spring-guides/gs-spring-boot-docker.git


②ビルドを行う

./mvnw package && java -jar target/gs-spring-boot-docker-0.1.0.jar

mkdir -p target/dependency && (cd target/dependency; jar -xf ../*.jar)


③dockerを作成する。

docker build -t springio/gs-spring-boot-docker .


参照先:

https://spring.pleiades.io/guides/gs/spring-boot-docker/



2)作成したらECRにpushする。



3)Springboot用のターゲットグループを作成しておく

  ->8080ポートで作成しておく











4)ALBの作成を行う

ターゲットグループを先ほど作成した、springbootをして指定する


5)Route53の設定

CNAMEで、先ほど作成したALBDNSを挿入する



■ECSのサービス作成について:

6)ロードバランシングの設定について、上記で作成したロードバランサーの指定と

ターゲットグループをspringbootにする。





作成したnginxのコンテナからアクセスしてみると

springbootで作成したHello Dockerが表示されているのが確認できた。









付録:

nginxのリバースプロキシーのコンフィグ設定になる。

パス指定を間違えると、ECSのコンテナの作成がNGになるので注意する




springbootでパスを変更いしたい場合:

以下を変更すれば、良さそう





























内部DNScurlコマンドで確認してみる






0 件のコメント:

コメントを投稿

k8s node version UP(1.34.1 > 1.34.2)

[ マスターノードでの準備と安全確保] 1)etcdctl クライアントのインストール: (未インストールの場合は必要) apt update apt install etcd-client 2)etcd バックアップの取得と退避 (最重要): ETCDCTL_API...