Dockerは単一のイメージを使用して複数のポートにマッピングします

Dockerは単一のイメージを使用して複数のポートにマッピングします

必要:

公式サイトのリソースサーバーは確かに1つのインスタンスでは使えず、複数のインスタンスを一緒に使う必要があるのですが、コピーし続けると遅すぎるので、dockerイメージを直接使って同一のコンテナインスタンスを複数作成できないかと考えています。

2 つの docker-compose.yml ファイル

バージョン: '3'
サービス:
 マイクロHCネットウェブサイト13:
  イメージ: 172.18.0.1:5000/hcnet-website-12:0.0.1-SNAPSHOT
  再起動: 失敗時
  ポート:
  -8311:8211
〜
バージョン: '3'
サービス:
 マイクロHCネットウェブサイト13:
  イメージ: 172.18.0.1:5000/hcnet-website-12:0.0.1-SNAPSHOT
  再起動: 失敗時
  ポート:
  -8211:8211
〜

docker-compse.ymlを実行した後

通常の起動を表示

コンテナを表示

マッピングの成功

最後に領事をチェック

確かに、それらはすべて同じマッピング インターフェースです。

追加知識: Docker 入門 - 複数のコンテナの構築 (docker-compose)

一度に複数のサービス(コンテナ)を起動すると、実稼働環境での運用が容易になります。

haproyのロードバランシングApacheサービスとnginxサービスを例に挙げます

Compose による Docker のマルチコンテナ アプリケーション

Compose は、ユーザーが複数のコンテナを定義して実行できるようにする Docker アプリケーションです。 Compose では、YAML ファイルを使用してアプリケーション サービスを構成できます。次に、簡単なコマンドを 1 つ実行するだけで、構成したすべてのサービスが作成され、開始されます。

Compose を使用するには、基本的に次の 3 つの手順を実行します。

Dockerfile でアプリケーション環境を定義して、どこでも複製できるようにします。

アプリケーションを構成するサービスを docker-compose.yml で定義し、分離された環境で一緒に実行できるようにします。

最後に、docker-compose up を実行すると、Compose が起動し、アプリケーション全体が実行されます。

1. docker-compose.ymlファイルを編集して複数のイメージを指定します。

apache: # apache サービス image: rhel7:v1 # 親イメージ名 expose:
        - 80 # ポートボリュームを公開: # ボリュームをマウント - ./web/:/var/www/html

nginx: # nginx サービスimage: nginx # 親イメージexpose:    
        - 80 # ポートを公開 haproxy: # haproxy サービス image: haproxy # 親イメージ volumes: # ボリュームをマウント - ./haproxy:/usr/local/etc/haproxy
    リンク: # 関連コンテナ - apache
        - nginx
    ポート: #ポートマッピング - "8080:80"
    expose: # 公開されたサービスポート - 80

2. haproxy設定ファイルを編集する

global # グローバル設定、ログ情報 log 127.0.0.1 local0
    ログ 127.0.0.1 local1 通知
デフォルト
    ロググローバル
    オプション httplog
    オプション dontlognull
    タイムアウト接続 5000ms
    タイムアウトクライアント 50000ms
    タイムアウトサーバー 50000ms
    統計 uri /status
フロントエンドバランサー
    bind 0.0.0.0:80 # リスニングポート default_backend web_backends # デフォルトバックエンド backend web_backends
    バランスラウンドロビン
    server weba apache:80 check # バックエンド a apache は .yml ファイル内のリンクの内容に対応します server webb nginx:80 check

必要な書類が十分かどうか確認する

[root@foundation21 compose]# ls
docker-compose.yml haproxy ウェブ
[root@foundation21 compose]# pwd
作成する
# ファイルの所属を表示 [root@foundation21 compose]# ツリー
。
├── docker-compose.yml
├── ハプロキシ
│ └── haproxy.cfg
└──ウェブ
  └──index.html

2 つのディレクトリ、3 つのファイル

cmoposeディレクトリでdocker-compose upコマンドを実行して、複数のイメージを同時に起動します。

ブラウザで表示するには:

haproxyはバックエンドWebサーバーの負荷分散を実装します

上記の Docker は、単一のイメージを使用して複数のポートにマップします。これは、エディターがあなたと共有するすべてのコンテンツです。参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • Docker ファイルの保存パス、ポート マッピング操作モードの変更
  • Docker プライマリ ネットワーク ポート マッピング構成
  • 実行中のDockerコンテナのポートマッピングを変更する方法
  • Docker でコンテナのポート マッピングを動的に変更する方法
  • Docker ポート マッピングと外部アクセス不可の問題
  • ポートマッピング後に Docker コンテナが突然接続に失敗する問題のトラブルシューティング プロセス
  • Dockerコンテナの起動後にポートマッピングを追加する
  • Dockerは複数のポートマッピングコマンドを有効にします

<<:  MySQL共通インデックスとユニークインデックスの選択に関する詳細な分析

>>:  html2canvasで画像が正常にキャプチャできない時の解決方法

推薦する

MySql SQL最適化のヒントの共有

ある日、内部結合を含む SQL ステートメントの実行速度はそれほど遅くはない (0.1 ~ 0.2)...

EChartsマウスイベント処理方法の詳細な説明

イベントとは、クリック、マウスオーバー、ページの読み込み後にトリガーされる読み込みイベントなど、ユー...

MySQLデュアルマスター(マスターマスター)アーキテクチャ構成ソリューション

企業では、データベースの高可用性は常に最優先事項です。多くの中小企業は、MySQL マスター スレー...

Linuxプロセス監視と自動再起動の簡単な実装方法

目的: Linux では、さまざまな理由でサーバー プログラムがダンプされ、ユーザーの使用に影響する...

Javascript 共通高階関数の詳細

目次1. 一般的な高階関数1.1、フィルター1.2、地図1.3、減らすHigher Order fu...

HTML マークアップ言語 - フォーム

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

React Hooksの詳細な説明

目次フックとは何ですか?クラスコンポーネント機能コンポーネントフックが作られた理由要約するフックとは...

MySQL 最適化 Zabbix パーティション最適化

zabbix を利用する上での最大のボトルネックはデータベースです。zabbix のデータストレージ...

ウェブページのドロップダウンリストとdivレイヤーのカバーの問題を選択する

HTML の select 要素に関する質問は、さまざまな場所で提起されています。最近のプロジェクト...

データベースインデックスの知識ポイントの概要

目次ファーストルックインデックスインデックスの概念インデックスファイルの構成インデックスの役割SQL...

マークアップ言語 - Web アプリケーション CSS スタイル

123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...

MySQLトリガートリガー例の詳細な説明

目次トリガーとは何かトリガーを作成する表は次のようになります。さらにいくつかの単語を挙げます。制限と...

CentOS 8 VMware 仮想マシンがインターネットにアクセスするための静的 IP ネットワーク カードの設定の詳細な説明

最初のステップ: VMwareで、「編集」-「仮想ネットワークエディタ」をクリックします。下図に示す...

CSSの一般的なプロパティ

CSS の背景: background:#00ffee; //背景色を設定するbackground-...