点击跳转:Docker安装MySQL、Redis、RabbitMQ、Elasticsearch、Nacos等常见服务全套(质量有保证,内容详情)
1. 什么是Elasticsearch
Elaticsearch,简称为es, es是一个开源的高扩展的分布式全文检索引擎,它可以近乎实时的存储、检索数据;本身扩展性很好,可以扩展到上百台服务器,处理PB级别的数据。es也使用Java开发并使用Lucene作为其核心来实现所有索引和搜索的功能,但是它的目的是通过简单的RESTful API来隐藏Lucene的复杂性,从而让全文搜索变得简单。
2. Docker安装Elasticsearch
安装Elasticsearch最重要的就是确定Elasticsearch的版本!根据您的Spring Boot项目确定好Elasticsearch的版本,其它跟es相关的服务在安装时要求与es的版本保持一致。如何确定Elasticsearch的版本是本文讨论的重点!版本、版本、版本,重要的事情说3遍!
2.1 确定Elasticsearch的版本
Spring Boot项目与es整合时版本的兼容性很重要,不兼容的版本会导致意想不到的错误或直接导致不能使用,所以安装es之前必须先确定好版本。版本兼容性查看官方的兼容性矩阵。具体如下图:
以上图举例:假设我们的Spring Boot项目的版本是2.1.x,那么对应要求es的最低版本是6.2.2,注意是最低版本,如果测试时还是不能正常使用那么需要修改es的版本为6.2.2的邻近版本但是最好不要超过上一个的限制(上表中是6.8.12)。
作者就遇到过项目的Spring Boot版本是2.1.3.RELEASE,按照兼容性要求使用了es的6.2.2,安装后发现不仅Spring Boot项目不能正常启动而且es的6.2.2版本没有对应版本的中文分词器IKAnalyzer与之对应,所以调整为邻近的6.6.2后都正常了。
2.2. Docker安装Elasticsearch
以Elasticsearch的6.6.2版本为例:
- 安装Elasticsearch
# 注意下:Elasticsearch的Docker镜像是Elasticsearch官方自己维护的
docker run -p 9200:9200 -p 9300:9300 --name elasticsearch \
-e "discovery.type=single-node" \
-e "cluster.name=elasticsearch" \
-e "ES_JAVA_OPTS=-Xms512m -Xmx1024m" \
-d "docker.elastic.co/elasticsearch/elasticsearch:6.6.2"
注意下:es的Docker镜像是es官方自己维护的,Docker安装es官方参考
- 查看容器日志:
docker logs -f elasticsearch
- 访问是否会返回版本信息:http://localhost:9200
2.3. 给Elasticsearch安装中文分词器IKAnalyzer(可选)
以Elasticsearch的6.6.2版本为例:
- 下载中文分词器IKAnalyzer,注意下载与es对应的版本,下载地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
- 拷贝安装包到容器的特定目录
/usr/share/elasticsearch
docker cp elasticsearch-analysis-ik-6.6.2.zip elasticsearch:/usr/share/elasticsearch
- 解压到es容器的
/usr/share/elasticsearch/plugins
目录
文章来源:https://www.toymoban.com/news/detail-705947.html
注意目录结构,别多一层或少一层目录文章来源地址https://www.toymoban.com/news/detail-705947.html
- 重新启动服务:
docker restart elasticsearch
- 再次检查日志和访问http://localhost:9200
docker logs -f elasticsearch
到了这里,关于【Docker】Docker安装Elasticsearch服务的正确方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!