前提:
已经安装好docker运行环境;
步骤:
1.安装elasticsearch 6.2.2版本,目前最新版是7.2.0,这里之所以选择6.2.2是因为最新的SpringBoot2.1.6默认支持的就是6.2.2的,而7.x是有很大更新的,SpringBoot正常集成的情况下无法和es最新版本兼容;
这里只需要记住Document的一个index只能创建一个type,且type的值都设置为_doc即可和7.x的es兼容【8.x将会移除type的概念,7.x里是为了过渡,index将成为类似List<Product>的结构】;
安装命令:docker pull docker.elastic.co/elasticsearch/elasticsearch:6.2.2【这里docker记得配置国内加速器,否则安装很慢】
2.安装好es后为它添加ik插件,先创建运行一个es6.2.2的container(docker run --name elasticsearch6 -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" docker.elastic.co/elasticsearch/elasticsearch:6.2.2
);接着用docker exec -it elasticsearch6 /bin/bash进入到这个es应用内部,然后修改./config/elasticsearch.yml的cluster.name为elasticsearch,接着执行./bin/elasticsearch-plugin install https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v6.2.2/elasticsearch-analysis-ik-6.2.2.zip;
等待es完成上述操作后通过exit退出es内部应用的bash状态;然后重启这个container即可;
3.安装kibana执行:docker pull docker.elastic.co/kibana/kibana:6.2.2;接着在es6.2.2容器启动的前提下执行:docker run --link {es6的container名字}:elasticsearch -p 5601:5601 kibanaImageId(可以添加name也可以不加);
注意,初次运行的kibana需要添加index pattern;
然后整合SpringBoot2.1.6的示例代码可看:https://github.com/Silentdoer/SpringBoot-Elasticsearch.git