1、搭建配置es
# 创建es容器
# es的端口
# 9200 走http协议端口
# 9300 代码层面tcp端口
docker run -di --name elasticsearch -p 9200:9200 -p 9300:9300 elasticsearch:6.5.0
# 登录es容器
docker exec -it elasticsearch /bin/bash
# 修改elasticsearch.yml文件,添加跨域配置
http.cors.enabled: true
http.cors.allow-origin: "*"
# 重启Elasticsearch容器
docker restart elasticsearch
本地浏览器输入:http://虚拟机IP:9200
2、安装ik分词器
# 登录es容器
docker exec -it elasticsearch /bin/bash
# 在线安装IK分词器(注意版本一致)
./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.5.0/elasticsearch-analysis-ik-6.5.0.zip
如果在线安装失败,可以把资料的ik分词插件,自行上传到Elasticsearch容器的plugins目录
3、安装head插件
head插件有安装版、tomcat版和chrome的插件版,我采用插件版,方便查看索引,以及创建索引
4、创建Kibana容器
为了更方面编写搜索代码,我们先在Kibana中写出DSL语句
# 创建Kibana容器
docker run -di -e ELASTICSEARCH_URL=http://192.168.66.133:9200 --name kibana -p 5601:5601 kibana:6.5.0
本地浏览器输入:http://虚拟机IP:5601
5、docker下的容器修改配置文件(以es为例)
# 1、进入容器下的目录操作
docker exec -it elasticsearch /bin/bash
exit # 退出
# 2、将配置文件拷贝出来修改
# (1)拷贝出来
docker cp [容器ID]:/usr/share/elasticsearch/config/elasticsearch.yml /elasticsearch.yml
# (2)修改完成后拷贝回去
docker cp /elasticsearch.yml [容器ID]:/usr/share/elasticsearch/config/elasticsearch.yml
# (3)重新启动,新的配置文件就可以起作用了