導入 dockerコンテナとdocker-composeに基づいて、Linux環境でのdockerの基本的な使い方を学ぶ必要があります。 2つのTomcatを負荷分散サーバーとして使用する 1. dockerを使用してTomcatとnginxのイメージを取得する nginx リファレンスをプルする tomcat リファレンスをプルする 2. docker-composeを使用して2つのTomcatサービスを作成する 新しい tomcat ディレクトリを作成し、そのディレクトリ内に docker-compose.yml ファイルを作成して、次の内容を入力します。 バージョン: '3' サービス: トムキャット1: 画像: トムキャット コンテナ名: tomcat1 ポート: - 9090:8080 トムキャット2: 画像: トムキャット コンテナ名: tomcat2 ポート: - 9091:8080 コンテナを起動するには、docker-compose.yml ファイルと同じディレクトリで次のコマンドを実行します (-d はバックグラウンドで実行することを意味します) docker-compose を起動 -d 成功したら、Dockerコンテナリストを確認します 注文 ドッカーps 結果の例には、tomcat1とtomcat2の2つのコンテナがあります。 コンテナID イメージ コマンド 作成ステータス ポート名 271dd3610d1d tomcat "catalina.sh run" 58 分前 58 分前に起動 0.0.0.0:9091->8080/tcp tomcat2 fa19d20f0022 tomcat "catalina.sh run" 58 分前 58 分前に起動 0.0.0.0:9090->8080/tcp tomcat1 コンテナにインタラクティブにアクセスし、ホームページのコンテンツを変更して 2 つの Tomcat を区別します (以下の例では Tomcat が使用されています) 注文 docker exec -it fa19d20f0022 バッシュ ホームページにコンテンツを追加する echo "9090" >> webapps/ROOT/index.jsp 3. nginxサービスを作成する 新しい nginx ディレクトリを作成し、そのディレクトリ内に docker-compose.yml ファイルを作成して、次の内容を入力します。 バージョン: '3.1' サービス: nginx: 再起動: 常に 画像: nginx コンテナ名: nginx ポート: - 81:80 ボリューム: - ./conf/nginx.conf:/etc/nginx/nginx.conf docker-compose は /conf/nginx.conf を自動的にフォルダーとして扱うため、コンテナーを作成する前に nginx ディレクトリに conf ディレクトリを作成し、conf ディレクトリに nginx.conf ファイルを作成して次の内容を入力する必要があります。 ユーザー nginx; ワーカープロセス 1; イベント { ワーカー接続 1024; } http { アップストリーム myapp1 { server [サーバーIP]:9090 weight=10; サーバー [サーバー IP]:9091 重み = 10; } サーバー{ 聞く 80; server_name [サーバーIP]; 位置 / { proxy_pass http://myapp1; } } } docker-compose.ymlと同じディレクトリで実行します。 docker-compose を起動 -d 4. [server ip]:81 にアクセスし、数回更新して、2 つの Tomcat サービス間の切り替えを確認します。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: JavaScriptオフセットは、ウィンドウ内でのマウス座標の取得とモジュールのドラッグを実装します。
>>: MySQL 5.7.24 のインストールと設定方法のグラフィックチュートリアル
事前に一言:突然、複数のドメイン名のアクセスを https に転送するというタスクを受け取りました。...
ステップ1: MySQL YUMソースを取得するMySQLの公式サイトにアクセスして、RPMパッケー...
目次定期的に剪定するミラーエビクションコンテナのクリーンアップネットワークソート体積の蒸発完全にクリ...
インデックス拡張: InnoDB は、プライマリ キー列をそのインデックスに追加することで、各セカン...
ブラウザの互換性は、実際の開発では見落とされがちな最も重要な部分です。古いバージョンのブラウザの互換...
カテゴリ選択を選択します。テストの結果、IE と FF はこの要素を適切にサポートできることがわかり...
データのバックアップと復元パート2は次のとおりです基本的な概念:バックアップ、現在のデータまたはレコ...
filterは通常、特定の値をフィルターするために使用されます。たとえば、フィールドが空だが、フロン...
目次親コンポーネントリストボックスリストコンポーネントボタンコンポーネント PageButton昨年...
目次序文ブラウザにおけるオーディオとビデオに関する知識のまとめビデオエンコーディング包装形態オーディ...
目次序文紹介-公式設定例序文vueCli を使用してプロジェクトを開発したことのある方は、少しがっか...
最近、絵文字にコメントする機能が必要なコメント機能に取り組んでいたため、 contentEditab...
この記事では、参考までに、製品拡大鏡を実装するためのJavaScriptの具体的なコードを紹介します...
最近、プロジェクトの過程で問題に遭遇しました。メニューバーを常に上部に表示し、後続の要素をその下に表...
序文: Vue3 がリリースされてからかなり経ちますが、最近、会社のプロジェクトでVue3 + Ty...