Windows下安装ElasticSearch和IK分词器
前言
在当今数据驱动的时代,高效管理和检索海量数据已成为许多应用的核心需求。无论是构建实时日志分析系统、实现商品搜索功能,还是开发智能推荐引擎,都离不开一个强大的搜索与分析工具的支持。而 Elasticsearch(ES) 正是这一领域的佼佼者。作为一款开源的分布式搜索与分析引擎,Elasticsearch 凭借其近乎实时的查询性能、高扩展性以及灵活的 RESTful API,成为开发者、运维工程师乃至数据科学家工具箱中不可或缺的利器。
Elasticsearch 基于 Apache Lucene 构建,能够轻松处理结构化、非结构化数据的全文检索、聚合分析和复杂查询。其分布式架构天然支持横向扩展,允许用户通过简单的节点扩容应对数据量的增长,同时保障服务的高可用性。无论是初创企业的轻量级应用,还是互联网巨头的亿级数据处理场景,ES 都能游刃有余。
然而,对于刚接触 Elasticsearch 的开发者而言,从零开始部署和配置 ES 环境可能面临诸多挑战:复杂的依赖项、繁琐的集群配置、版本兼容性问题,以及生产环境中的资源隔离需求。这时,Docker 的优势便凸显出来。借助 Docker 容器化技术,我们可以快速构建隔离的 ES 运行环境,一键部署单节点或集群,同时避免“环境差异”带来的隐性成本,让开发和运维流程更加高效可控。
本文将聚焦于 如何在 Docker 环境下快速、稳定地部署 Elasticsearch,内容涵盖从基础概念解析到实战操作的全流程。
接下来,让我们从 Docker 的准备工作开始,一步步揭开 Elasticsearch 容器化部署的实战篇章。
Docker安装ElasticSearch
创建挂载目录
在你准备好的文件夹下面依次创建三个文件夹:config、data、plugins
拉取ES镜像
1 | docker pull elasticsearch:8.12.2 |
编写并执行启动命令
1 | docker run --privileged=true --name elasticsearch -p 9200:9200 -p 9300:9300 -e "discovery.type=single-node" -e ES_JAVA_OPTS="-Xms512m -Xmx512m" -e "http.host=0.0.0.0" -v D:\tools\configurations\docker\externalVolumes\ElasticSearch\config\elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v D:\tools\configurations\docker\externalVolumes\ElasticSearch\data:/usr/share/elasticsearch/data -v D:\tools\configurations\docker\externalVolumes\ElasticSearch\plugins:/usr/share/elasticsearch/plugins elasticsearch:8.12.2 |
修改访问密码
在ES启动成功后,进入容器内部,通过命令行的方式修改访问密码
1 | 1、列出运行中的实例信息,并复制容器ID |
浏览器访问下试: http://localhost:9200/ ,默认用户名为elastic,密码为自己设置的密码。以下内容即说明ES安装已经成功了
1 | { |
安装Elasticvue
ES完成后,我们再来安装一下ES的可视化管理工具。ES的可视化管理工具有很多,比如Kibana啥的,这里选择使用Elasticvue,主要是安装使用都很轻量便捷。
Elasticvue支持Docker部署,也支持通过浏览器插件的方式安装,我们这里选择第二种。打开Edge浏览器,输入以下网址,并搜索Elasticvue安装即可。
1 | https://microsoftedge.microsoft.com/addons/Microsoft-Edge-Extensions-Home |
安装IK分词器
从以下网址下载和ES版本对应的分词器,然后在plugins目录下新建ik目录, 将下载后的文件解压到ik目录下,最后重启下ES。
1 | https://release.infinilabs.com/analysis-ik/stable/ |
插件安装好后,我们验证下ik是否已生效
在Elasticvue 中选择REST,请求路径中输入**/_cat/plugins?v**,响应信息类似下面即说明ik分词器已生效:
1 | [ |