下载elasticSearch 镜像

docker pull elasticsearch:7.17.0

**


先创建一个自定义网络,用于连接到连接同一网络的其他服务,比如ES和Kibana。**

**# docker network create esnetwork **

**


启动Es 时指定 9200,可查看启动后 服务信息,配置 最大最小内存 **

docker run -e ES_JAVA_OPTS=”-Xms256m -Xmx256m” -d —name elasticsearch —net esnetwork -p 9200:9200 -p 9300:9300 -e “discovery.type=single-node” elasticsearch:7.17.0

因为个人的是一核一G的服务器

访问 启动地址

http://localhost:9200

修改配置,解决跨域访问问题 因为kibana 后续要访问

#docker exec -it elasticsearch /bin/bash

#cd /usr/share/elasticsearch/config/ #vi elasticsearch.yml

在elasticsearch.yml的文件末尾加上:

http.cors.enabled: true http.cors.allow-origin: “*”

修改配置后重启容器即可。
docker restart elasticsearch
**

安装ik分词器

es自带分词器对中文支持有限,那么我们下载插件 ik 去解决问题。

https://github.com/medcl/elasticsearch-analysis-ik,版本需要和ElasticSearch版本对应
image.png
image.png

image.png

image.png

并且 es 和 分词器 版本号要高度一致 否则也会导致异常发生

解压到es的plugins 文件下,命名为 ik 目录

image.png

在解压后 重启es,能看到加载ik 就算是基本成功了

#docker restart 96867e40b7d5

image.png测试

head 能清晰看到每个分片的信息、发送rest api请求


通过google商店直接下载即可

下载安装 Kibana 版本号同es 高度一致


#docker pull kibana:7.17.0

启动kibana

docker run -d —name kibana —net esnetwork -p 5601:5601 kibana:7.17.0

** 如果需要汉化 在kibana.yml 配置文件中加入后,重启即可

i18n.locale: “zh-CN”

访问:http://localhost:5601