Docker 配置 Elasticsearch 和 Kibana 和 IK分词器
注意!本教程ES版本是7.17.28,对应SpringBoot版本是2.7.2
安装ES
创建网络
▼bash复制代码docker network create es-net
拉取镜像
▼bash复制代码docker pull elasticsearch:7.17.28
挂载目录
▼bash复制代码mkdir -p /usr/local/es/data /usr/local/es/config /usr/local/es/plugins
▼bash复制代码chmod 777 /usr/local/es/data chmod 777 /usr/local/es/config chmod 777 /usr/local/es/plugins
创建容器
▼bash复制代码docker run -d \ --restart=always \ --name es \ --network es-net \ -p 9200:9200 \ -p 9300:9300 \ --privileged \ -v /usr/local/es/data:/usr/share/elasticsearch/data \ -v /usr/local/es/plugins:/usr/share/elasticsearch/plugins \ -e "discovery.type=single-node" \ -e "ES_JAVA_OPTS=-Xms512m -Xmx512m" \ elasticsearch:7.17.28
进入容器
▼bash复制代码docker exec -it es /bin/bash
▼bash复制代码cd config
关闭密码
▼bash复制代码echo 'xpack.security.enabled: false' >> elasticsearch.yml
重启一下es
▼bash复制代码docker restart es
浏览器测试一下es
▼BASH复制代码http://192.168.27.129:9200
安装Kibana
拉取镜像
▼bash复制代码docker pull kibana:7.17.28
挂载目录
▼bash复制代码mkdir -p /usr/local/kibana/config /usr/local/kibana/data
▼BASH复制代码chmod 777 /usr/local/kibana/data chmod 777 /usr/local/kibana/config
创建容器
▼BASH复制代码docker run -d \ --restart=always \ --name kibana \ --network es-net \ -p 5601:5601 \ -e ELASTICSEARCH_HOSTS=http://es:9200 \ kibana:7.17.28
浏览器测试kibana
▼bash复制代码http://192.168.27.129:5601
安装IK分词器
进入es容器
▼BASH复制代码docker exec -it es /bin/bash
下载安装
▼bash复制代码./bin/elasticsearch-plugin install https://release.infinilabs.com/analysis-ik/stable/elasticsearch-analysis-ik-7.17.28.zip
es和kibana和IK分词器的版本号要一样
最后重启es就好
▼text复制代码docker restart es
坑点
ES 8.xx版本不兼容SpringBoot2.7.2
卸载8版本的时候,要把挂载出来的Config,data目录给删了,否则再次安装es的时候,会一直不断重启。这时候通过docker logs -f es可以查看日志。发现是8.x版本的IK分词器没有删除干净导致的。
参考自
https://blog.csdn.net/Acloasia/article/details/130683934 https://www.cnblogs.com/little-cheap/p/15317861.html
评论
问答助学
相关内容
0个评论
全部评论
点击登录,快来和大家讨论吧~
表情
图片
暂无评论
作者分享
Docker 部署 Nacos:v2.2.0
5
#智能面试刷题平台
主后端的,如果不考虑服务端渲染,请问这期自己用vue写,不用next,改造起来困难吗?
3
我已通关码神挑战,一起来玩呀~https://1024.codefather.cn/
0
#面试鸭项目
大家有没有试过,删了原来的favicon.ico,然后复制自己的favicon.ico进去原来一模一样的路径,但是就是识别不了?
跟原来一样放在src/app目录下,但是就是识别不了?
3
#bytemd
#已解决;js文件里面引入样式'import "bytemd/dist/index.css";'就行
在做OJ判题系统的时候,不太会写前端,跟着一行一行敲,也把直播代码直接复制过来,都没有解决这个问题。
如图所示,展示出来的是元素,没有输入框。正常来说应该是右图这样的显示效果。
3
