docker構築単機elasticsearch
6475 ワード
前言
テストを開発するためだけに、ローカルでスタンドアロンESを構築するのは良い選択であり、本稿では、スタンドアロン版のESを構築し、テストする方法をまとめた.
環境:
mac os 10.15.7
docker Docker version 20.10.2, build 2291f61
elasticsearch : 7.6.2
構築手順
docker pull elasticsearch:7.6.2
ここでは、必ず具体的なバージョンを指定してください.export ES_SINGLE=/opt/workspace/work/es/single
# es
mkdir ${ES_SINGLE}/config/
# es
mkdir ${ES_SINGLE}/data/
vim ${ES_SINGLE}/config/es-single.yml
es-single.ymlは以下の内容を書き込み、wq:cluster.name: elasticsearch-single
node.name: es-single-node-1
network.bind_host: 0.0.0.0
#
network.publish_host: 127.0.0.1
http.port: 9200
transport.tcp.port: 9300
http.cors.enabled: true
http.cors.allow-origin: "*"
node.master: true
node.data: true
bootstrap.system_call_filter: false
cluster.initial_master_nodes: ["es-single-node-1"]
docker run -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -d -p 9200:9200 -p 9300:9300 -v ${ES_SINGLE}/config/es-single.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v ${ES_SINGLE}/data:/usr/share/elasticsearch/data --name es-single elasticsearch:7.6.2
ES_JAVA_OPTSパラメータはES起動JVMのパラメータを指定していますが、デフォルトは2 Gのようですので、ローカルテストは小さくすればいいです.次にポートを正常にマッピングし、パスをマッピング#
docker logs -f es-single
#
curl localhost:9200
{
"name" : "es-single-node-1",
"cluster_name" : "elasticsearch-single",
"cluster_uuid" : "bfNp_65OQx6-MXFZ7_79NA",
"version" : {
"number" : "7.6.2",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "ef48eb35cf30adf4db14086e8aabd07ef6fb113f",
"build_date" : "2020-03-26T06:34:37.794943Z",
"build_snapshot" : false,
"lucene_version" : "8.4.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
構築プロセスの異常
chmod -R 777 ${ES_SINGLE}
es-single-node-1
nodeを指す.nameの構成値は、記入を間違えてもエラーが発生します.bootstrap.system_call_filter: false
cluster.initial_master_nodes: ["es-single-node-1"]
まとめ
本文はdockerがES単機版を構築した内容をまとめた.