为啥要重装,我简直了,本来装好了6.8.6版本,结果更新了IDEA2020.1版本后,新建项目springboot最新版本为2.3.0,结果引入Elasticsearch后发现从这个springboot2.3.0版本后,已经没有Jest方式操作es支持,只能选择RestClient操作方式,而且默认支持的Elasticsearch版本是7.6.2
所以重装一下
1.关闭Elasticsearch容器运行状态
[root@localhost ~]# docker stop ce72e0f7a466(这里是容器ID,不是镜像ID)
2. 删除Elasticsearch:6.8.6版本容器:
[root@localhost ~]# docker rm ce72e0f7a466(这里是容器ID,不是镜像ID)
3. 删除Elasticsearch:6.8.6版本镜像
[root@localhost ~]# docker rmi de67jok87ils (镜像ID)
4.下载7.6.2版本Elasticsearch
[root@localhost ~]# docker pull elasticsearch:7.6.2
5.启动镜像
[root@localhost ~]# docker run -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -d -p 9200:9200 -p 9300:9300 --name MyES001 c8b4938e5db2
由于我是本地虚拟机安装,为了节省内存限制了es内存大小: -e ES_JAVA_OPTS="-Xms512m -Xmx512m",如果是在服务器上,可以不考虑这个因素,直接docker run -d -p 9200:9200 -p 9300:9300 --name MyES001 c8b4938e5db2
MyES001 是我自定义的ES名称,c8b4938e5db2是镜像IMAGE ID
4.查看运行状态
[root@localhost ~]# docker ps -a
5.测试,在浏览器输入:http://服务器ip地址:9200,显示es版本等信息,证明es安装且启动正常。
问题解决:
这里在启动的时候,我遇到了启动失败,查看容器日志,
[root@localhost ~]# docker logs 24a168ae72c6(容器id)
日志中有报:
ERROR: [1] bootstrap checks failed [1]: the default discovery settings are unsuitable for production
解决办法:修改elasticsearch的yml配置文件,添加初始节点。
[root@localhost ~]# find / -name elasticsearch.yml
根据查到的路径,
修改其yml文件
在文件中添加
node.name: node-1
cluster.initial_master_nodes: [“node-1”]
修改保存,再次启动ES,启动成功,浏览器验证无误,并且还显示了刚刚添加的初始节点名称“node-1”