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の論理アーキテクチャに関する深い理解

推薦する

HTML ページはダーク モードの実装をサポートします

2019年から、AndroidとiOSの両方のプラットフォームでダークモードが使用され始めました。も...

MySQL の 10 進数データ型の小数点埋め込み問題の詳細な説明

序文開発プロセスでは、10 進データ型がよく使用されます。 MySQL では、小数点は正確なデータ型...

ホワイトボードを踏まないようにするゲームを実装するための HTML+CSS+JS

目次背景1. 思考分析2. ページ構成2.1 HTML レイヤー2.2 CSS レイヤー2.3 JS...

MySQL msiバージョンのダウンロードとインストールの初心者向けの詳細なグラフィックチュートリアル

目次1. MySQL msiバージョンをダウンロードする2. インストール3. 環境変数を設定する1...

Alibaba Cloud Centos7のインストールとSVNの設定

1. SVNサーバーをインストールする yum でサブバージョンをインストール2. SVNバージョン...

Vueライフサイクルカメラの8つのフック関数

目次1. beforeCreateとcreated関数2. beforeMountとmount関数3...

js メモリ リークのシナリオ、それらを詳細に監視および分析する方法

目次序文どのような状況でメモリリークが発生する可能性がありますか? 1. 偶発的なグローバル変数2....

要素の幅(高さ)の適応を実現するCSSおよびCSS3の柔軟なボックスモデル

1. CSSは左の固定幅と右の適応幅を実現します1. ポジショニング <!DOCTYPE ht...

Dockerを使用してMySQLデータベースをインストールするDeepinの詳細な説明

まずMySQLソースをクエリするdocker 検索 mysql公式ウェブサイトにアクセスしてイメージ...

Firebug ツールを使用して iPad でページをデバッグする

iPad でページをデバッグするにはどうすればいいですか? iOS 5 をご利用の場合、iPad の...

テキストの展開と折りたたみの効果を実現するJavaScript

リスト形式のテキストの展開と折りたたみの実装は参考までに。具体的な内容は以下のとおりです。必要: 1...

Linuxドライバのプラットフォームバスの詳細説明

目次1. プラットフォームバスの紹介1.1. Linuxドライバの分離と階層化1.1.1. Linu...

CSS スタイルを HTML 外部スタイルシートにインポートする方法

リンクインスタイルとは、すべてのスタイルを 1 つ以上の外部スタイルシート ファイルに配置することで...

MySQL がエラーを報告: ファイルが見つかりません: './mysql/plugin.frm' 解決策

問題を見つける最近、仕事中に問題が見つかりました。問題は、MySQL ディスクがいっぱいだったことで...

jQuery で従業員管理登録ページを実装する

この記事では、従業員管理登録ページを実装するためのjQueryの具体的なコードを例として紹介します。...