docker中使用elasticsearch和kibana

一、创建一个共用的网络

docker network create esnetwork

二、运行es镜像

docker run --net esnetwork -e ES_JAVA_OPTS="-Xms256m -Xmx256m" -e "discovery.type=single-node" -d --name elasticsearch -p 9200:9200 -p 9300:9300 -v /e/best-project/es/data:/usr/share/elasticsearch/data -v /e/best-project/es/plugins:/usr/share/elasticsearch/plugins elasticsearch:7.17.3

-e "xpack.security.enabled=true" #开启安全认证

三、运行kibana镜像

docker run -d  --net esnetwork --name kibana -p 5601:5601 kibana:7.17.3

四、下载ik中文分词插件https://github.com/medcl/elasticsearch-analysis-ik,最好下载对应版本,下载解压到plugins目录下,以“ik”作为目录名称。最好使用远程字典,这样可以方便词库热更新。

 

 这里设置远程字典

 

分词器有两种分词模式: ik_max_word和 ik_smart两种模式。

  ik_max_word会将文本做最细粒度的拆分,比如会将"中华人民共和国人民大会堂"拆分为中华人民共和国、中华人民、中华、华人、人民共和国、人民共和国、共和、国人、人民大会堂、人民大会、人民、大会堂、大会、会堂。

  ik_smart会做最粗粒度的拆分,比如会将"中华人民共和国人民大会堂"拆分为中华人民共和国、人民大会堂。

最佳实践:创建索引时使用ik_max_word,最大化索引文本分词,搜索时使用ik_smart,这样搜索的结果更加精确。

 

posted @ 2022-05-01 01:29  对不起,我要起飞  阅读(260)  评论(0编辑  收藏  举报