一、es
1.拉取镜像:docker pull elasticsearch:7.3.2
2.创建自定义网络:docker network create somenetwork
3.运行容器:
docker run -d --name es --net somenetwork -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:7.3.2
4.配置跨域:
进入容器
docker exec -it es /bin/bash
进行配置
vi config/elasticsearch.yml
http.cors.enabled: true
http.cors.allow-origin: "*"
5.重启容器
docker restart es
检测
curl 127.0.0.1:9200
二、kibana
1.下载镜像
docker pull kibana:7.3.2
2.运行
docker run -d --name kibana --net somenetwork -p 5601:5601 kibana:7.3.2
访问 http://127.0.0.1:5601
参考https://www.cnblogs.com/-wenli/p/12740368.html
三、ik与自定义词典
参考https://www.cnblogs.com/zsh-blogs/p/12939583.html
1、下载对应版本的 https://github.com/medcl/elasticsearch-analysis-ik/releases/tag/v7.3.2 将分词器的包下载下来
2、将压缩包解压
3、docker exec -it es /bin/bash 查看路径pwd
4.复制本地文件到容器内
docker cp /home/es/ik-analyzer es:/usr/share/elasticsearch/plugins
5.扩展自定义词典:可以先在本地ik文件夹中修改xml文件,添加词典,之后docker cp过去覆盖。重启es与kibana生效。
docker restart elasticsearch
docker restart kibana
注意:自定义词典后缀为dic,编码为utf-8.
linux下直接用vim转换编码:
:set fileencoding=utf-8
用file查看编码:
file filename