我用的是springboot2.x版本,对应的spring-data-elasticsearch是3.1.6,对应的elasticsearch版本应该是6.4.3,所以应该拉取6.4.3的镜像,而我拉取的latest不是6版本的,导致我后面的一个测试方法报这个错,所以我重新拉取了一下,并修改了配置文件就可以了,还有就是springboot2.x一个index对应一个type,如果你一个索引下两个不同的type,就会报错。相同的type则会覆盖。
操作步骤如下:
下载:docker pull elasticsearch:6.4.3
启动:docker run -d --name es -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" elasticsearch:6.4.3
进入容器修改配置:docker exec -it es /bin/bash
进入配置文件夹:cd config
修改配置文件:vi elasticsearch.yml
添加配置:
http.cors.enabled: true
http.cors.allow-origin: "*"
如果有人在vi这里不能操作,是因为你没安装vim,可以尝试如下两个步骤:
1) 更新来源 apt-get update
2) 安装vim apt-get install -y vim