EK单例模式搭建
一、elasticsearch
1、安装
docker pull elasticsearch:7.6.1
2、安装IK分词器
提前下好的IK分词器(ik.zip),上传到Linux解压在es的plugins下的ik目录下。
3、解决跨域访问
跨域访问:跨端口,跨IP访问
# config目录下的elasticsearch.yml
# 尾部添加
http.cors.enabled: true
http.cors.allow-origin: "*"
4、启动
docker run
--name elasticsearch
-p 9200:9200
-p 9300:9300
-v /home/elasticsearch:/usr/share/elasticsearch
-e "discovery.type=single-node"
-d elasticsearch:7.6.1
# --name elasticsearch 定义容器名称
# -p 9200:9200 -p 9300:9300:映射主机端口:容器端口
# -v /home/elasticsearch:/usr/share/elasticsearch:挂载文件
# -e "discovery.type=single-node":环境变量,此处指定为单点模式。不是单例会报集群错误。
# -d elasticsearch:7.6.1:构建容器的镜像名称
5、查看日志
docker logs -f elasticsearch
6、查看是否成功
curl 127.0.0.1:9200
{
"name" : "24d7028654ab",
"cluster_name" : "docker-cluster",
"cluster_uuid" : "apu1o_uqSgKeN88ZmYqf9g",
"version" : {
"number" : "7.6.1",
"build_flavor" : "default",
"build_type" : "docker",
"build_hash" : "aa751e09be0a5072e8570670309b1f12348f023b",
"build_date" : "2020-02-29T00:15:25.529771Z",
"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"
}
二、kibana
1、安装
docker pull kibana:7.6.1
2、修改中文界面
# 将kibaba的config中的kibana.yml文件的尾部添加
i18n.locale: "zh-CN"
2、启动
docker run
--name kibana
--link=elasticsearch
-p 5601:5601
-v /home/kibana/config:/usr/share/kibana/config
-d kibana:7.6.1
三、head插件的安装
1、安装
docker pull elasticsearch:5
2、修改vendor.js
-
为了防止head在数据预览时,报406错误,需要修改vendor.js文件
-
vendor.js位置在docker的/usr/src/app/_site/vendor.js
-
docker cp:复制文件到自定义目录下,并修改
-
# 1、vim打开文件 vim vendor.js # 查找 # 2、在6886行 /contentType: "application/x-www-form-urlencoded ==>修改为: contentType: "application/json;charset=UTF-8" # 3、在7574行 var inspectData = s.contentType === "application/x-www-form-urlencoded" && ==>修改为: var inspectData = s.contentType === "application/json;charset=UTF-8" &&
3、启动
docker run
--name es-head
-p 9100:9100
-v /home/es-head/_site/vendor.js:/usr/src/app/_site/vendor.js
-d mobz/elasticsearch-head:5