ボリュームとは何ですか? ボリュームは英語で容量を意味し、Docker ではデータ ボリューム、つまりデータを格納するためのコンテナーを意味します。 なぜデータを共有するのですか? クラスターには複数の Tomcat があります。クラスター内の Tomcat にデプロイされたコードは同じコードのコピーです。ページ ファイルが変更されると、各コンテナーのページ ファイルを更新する必要があることを意味します。大規模なクラスターでは、このようなワークロードは無限に拡大します。このとき、この問題を解決するにはデータ共有が必要です。いわゆるデータ共有とは、複数のコンテナーがデータのコピーを共有することを指します。これを Docker 環境で実現するにはどうすればよいでしょうか。 データ共有の原則 ホストのハードディスク上に共有データを保存するためのスペースを作成します。複数のコンテナがこのディレクトリを共有します。 データ共有を実現するソリューション データ共有といえば、共有ディレクトリをマウントする Linux の mount コマンドを思い浮かべるのが簡単です。 [x] パラメータ [x] コンテナを共有する コンテナは共有ディレクトリを直接マウントします リソースリスト 2 つの Tomcat コンテナを準備します。 詳細な手順 共有データの作成 共有ディレクトリを作成します: 私はボリューム共有ディレクトリ albk です! docker run -d --name tomcat8000 -p 8000:8080 -v /usr/local/docker/volumn:/usr/local/tomcat/webapps tomcat docker run -d --name tomcat8001 -p 8001:8080 -v /usr/local/docker/volumn:/usr/local/tomcat/webapps tomcat コンテナを起動するときに、ホストの コンテナが正常に起動していることを確認する ドック ps ブラウザアクセス 共有ファイルを変更する
ブラウザを再認証する 変更した内容がリアルタイムで反映され、Tomcat コンテナを再デプロイする必要がないことがわかります。ただし、これにより、コンテナを起動するたびにパラメータが非常に長くなり、エラーが発生しやすくなります。これは、クラスターが小さい場合は許容されますが、規模が大きい場合は多くの作業が必要になります。別の方法を見てみましょう。 共有コンテナのマウント上記の方法を使用して、-vを使用して共有ディレクトリをマウントし、共有コンテナ docker create --name webpages -v /usr/local/docker/volumn/pages:/usr/local/tomcat/webapp tomcat /bin/true 共有コンテナのマウント docker run --name tomcat8000 -d -p 8000:8080 --volumes-from webpages tomcat docker run --name tomcat8001 -d -p 8001:8080 --volumes-from webpages tomcat 検証プロセスは上記と同じです。コンテナ Web ページの実際の機能は、マウント ポイントを定義することです。コンテンツを変更する場合は、共有コンテナの共有ディレクトリを変更するだけで済みます。 要約する コンテナが少ない場合は 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: MySQL で結合を使用して SQL を最適化する方法の詳細な説明
この記事の例では、書籍ショッピングカート機能を実現するためのVueの具体的なコードを参考までに共有し...
序文:複数の要素を格納するために、配列は最も一般的に使用されるデータ構造ですが、配列には多くの欠点も...
Zabbix バージョン 3.0 以降、Zabbix サーバー、Zabbix プロキシ、Zabbix...
1. CSS、jQuery、Canvasを使用してアニメーションを作成する1. キャンバス利点: ...
まず、Linux システムで実行されているノード プロセスはプロセスを強制終了できないことを紹介しま...
目次1. DOMとBOM関連1. 要素にフォーカスがあるかどうかを確認する2. 要素の兄弟ノードをす...
目次結合アルゴリズム駆動テーブルと非駆動テーブルの違い1. 単純なネストループ結合、単純なネスト、イ...
GTID の利点により、従来のファイル POS ベースのレプリケーションを GTID ベースのレプリ...
この記事を書いている時点でのReactのバージョンは16.13.1です1 npm run eject...
目次1. JavaScriptはHTMLでキャンバスを使用する2. ページストレージ技術1. Jav...
序文この記事は、サードパーティのモジュールをロードせずにNginxで処理できることのみに焦点を当てて...
従来の解決策FileReader を使用して UTF-8 形式のファイルを読み取り、ファイルの内容に...
背景コメントに似た機能を開発する場合は、必要に応じてすべてのコメントのサブセットをクエリする必要があ...
ソフトウェアバージョンウィンドウズ: ウィンドウズ10 MySQL: mysql-8.0.16-wi...
この記事では、例を使用して、MySQL トリガーの概念、原則、および使用方法を説明します。ご参考まで...