Docker イメージのローカル Elasticsearch ポート操作へのアクセス

Docker イメージのローカル Elasticsearch ポート操作へのアクセス

dockerスタックによってデプロイされたイメージサービスを使用すると、イメージを入力した後、理論的には、次の手順でローカルのelasticsearchサービスにアクセスできるはずです。

curl ローカル IP/9200

しかし、アクセスが拒否されたと表示されます。

その後、上記の手順を使用して確認したところ、マシンもアクセスを拒否していることがわかりました。

その後、ポート 9200 の elasticsearch サービスがリモート サーバーの elasticsearch サービスに穴を開けて接続されており、そのポートには次のコマンドでのみアクセスできることが判明しました。

カール 127.0.0.1:9200

ローカル IP アドレス経由でポート 9200 にアクセスする場合は、ホールパンチ コマンドの後に -g を追加する必要があります。

追加知識: Dockerでelasticsearchを実行すると、ポート9200にアクセスできず、コンテナは起動するとすぐに閉じられます。

docker を使用して es をインストールすると、ポート 9200 へのアクセスに失敗しました。docker ps を使用してコンテナーを表示すると、es を起動した後、一定時間後に自動的にシャットダウンすることがわかりました。仮想マシンのメモリを 4G に増やしましたが、問題は解決しませんでした。

実際、主な問題は、ES に割り当てられたメモリが小さすぎることです。

1. etc ディレクトリに入り、sysctl.conf ファイルを編集します。

vi /etc/sysctl.conf

2. 設定を追加します。

vm.max_map_count=262144

3. 実行:

sysctl -p

4. es の起動がまだ失敗する場合は、limits.conf を変更します。

vi /etc/security/limits.conf
*ソフトnofile65536
*ハードnofile 131072
* ソフト nproc 2048
* ハード nproc 4096

5. 最後に、仮想マシンを再起動し、ブラウザにアクセスします: http://192.168.162.131:9200。起動が成功したことを確認できます:

limits.confを変更せずにsysctl.confのみを変更することで成功しました。

上記のdockerイメージのローカルelasticsearchポートへのアクセス操作は、エディターが共有した内容のすべてです。参考になれば幸いです。また、123WORDPRESS.COMを応援していただければ幸いです。

以下もご興味があるかもしれません:
  • DockerコンテナはホストのMySQL操作にアクセスする
  • Docker コンテナのカスタム ホストのネットワーク アクセス操作
  • Docker ポート マッピングと外部アクセス不可の問題
  • Dockerでリモートアクセスを有効にする方法
  • DockerコンテナがJupyterにアクセスできない問題の解決策
  • Dockerモードで起動したTomcatのホームページにアクセスすると404エラーが発生する
  • 突然外部ネットワークからDockerにアクセスできなくなる問題の解決方法

<<:  初心者がHTMLタグを学ぶ(3)

>>:  MySQLの論理アーキテクチャに関する深い理解

推薦する

適応分析と応答分析の違いを専門用語で詳しく説明

日々の開発経験と関連するオンライン情報に基づいて、アダプティブとレスポンシブの違いをシンプルでわかり...

CSS3 での 2D および 3D 変換の実装

CSS3 は、要素の 2D 平面変換と視覚的な 3D 空間変換を実装します。2D 変換はより頻繁に使...

MySQL データ アーカイブ ツール mysql_archiver の詳細な説明

目次I. 概要2. pt-archiverの主なパラメータ3. mysql_archiverのインス...

docker インストール後に hello-world を実行する問題を解決する

yumを使用してcentos7.3にDocker V1.13.1をインストールしましたしかし、doc...

vsftp を使用して Linux で FTP サーバーを構築する (パラメータの説明付き)

導入この章では、主に Linux で FTP サーバーを構築するプロセスを紹介します。習得すべき重要...

JavaScript ES6 モジュールの詳細な説明

目次0. モジュールとは何か1.モジュールの読み込み1.1 方法1 1.2 方法2 2. 輸出と輸入...

CentOS7 のシステム サービスに Nginx を追加する方法

導入コンパイル、インストール、問題の解決後、Nginx は正常に動作していますが、現時点では Ngi...

nginx proxy_cache キャッシュ設定の詳細な説明

序文:私は仕事柄、オンラインライブストリーミングの分野に携わっており、ビデオの再生やダウンロードには...

Expressプロジェクトファイルディレクトリの説明と詳細な機能の説明

app.js: スタートアップファイル、またはエントリファイルpackage.json: プロジェク...

CSS を使用して三角形を実装する一般的な手法 (複数の方法)

面接の経験によっては、CSS に関する質問がよく見られ、CSS を使用して三角形を描画する方法につい...

React リストバーとショッピングカートコンポーネントの使用の詳細な説明

この記事では、Reactリストバーとショッピングカートコンポーネントの具体的なコードを参考までに紹介...

VMware Workstation 14 Pro インストール Ubuntu 16.04 チュートリアル

この記事では、VMware Workstation14 ProにUbuntu 16.04をインストー...

MySQL が uuid または snowflake id を主キーとして使用することを推奨しない理由の詳細な分析

前書き: MySQL でテーブルを設計する場合、MySQL では UUID や非連続かつ非繰り返しの...

MYSQLストアドプロシージャ、つまり一般的な論理知識のポイントの要約

MySQL ストアド プロシージャ1. ストアドプロシージャ構文(フォーマット)を作成する 区切り文...

jQueryは記事の折りたたみと展開の機能を実装します

この記事の例では、記事の折りたたみと展開の機能を実現するためのjQueryの具体的なコードを参考まで...