search-ose 7.10.2 安装 Analysis-ik 分词插件

  其他常见问题
内容纲要

概述

本文介绍如何在 Search-OSE 7.10.2-final 版本中安装 analysis-ik 分词器。通过重新构建 Docker 镜像的方式,将 IK 分词器集成到 Search 服务中,然后替换原有镜像并重启服务即可生效。

详细说明

1. 编写 Dockerfile

在任意工作目录下创建文件 Dockerfile ,内容如下:

# 替换成你现有的 search-ose 基础镜像 ID
FROM 3e5023d4b20a

# 1. 复制压缩包到容器临时目录
COPY elasticsearch-analysis-ik-7.10.2.zip /tmp/ik.zip

# 2. 切换到 plugins 目录,执行 jar 解压
WORKDIR /usr/lib/elasticsearch/elasticsearch-7.10.2-transwarp/plugins

RUN jar -xf /tmp/ik.zip \
    && rm -f /tmp/ik.zip \
    && chown -R root:root analysis-ik

说明:FROM 后的镜像 ID 需替换为实际 Search-OSE 基础镜像的 ID 或名称。可通过 docker images | grep search-ose 查看。

search-ose镜像默认不支持 unzip 命令,所以采用 jar -xf 方式解压;又因 jar 命令不支持指定目录,所以用 WORKDIR 先切换目录

2. 放置插件包

elasticsearch-analysis-ik-7.10.2.zip 文件放到与 Dockerfile 相同的目录下。

3. 构建新镜像

在 Dockerfile 所在目录执行以下命令构建镜像:

docker build -f ./Dockerfile -t kv1:5000/transwarp/search:search-ose-7.10.2-final ./

注意:镜像标签中的 kv1:5000 需替换为实际的镜像仓库地址, search-ose-7.10.2-final 可自定义版本标识。

4. 推送镜像到仓库

将构建好的镜像推送到私有仓库:

docker push kv1:5000/transwarp/search:search-ose-7.10.2-final

5. 重启search-ose组件

manager页面重启服务。

6. 验证安装

6.1 检查插件列表

使用以下命令查看 Search 节点是否已加载 IK 插件:

curl -u elastic:Transwarp123 -XGET "kv1:9200/_cat/plugins?v"

file

如果返回结果中包含 analysis-ik ,则说明插件安装成功。

注意:请将 IP 和端口替换为实际 Search 服务的地址,用户名密码根据实际配置调整。

6.2 测试分词效果

# 测试 ik_max_word 分词器
curl -X POST "kv1:9200/_analyze?pretty" -H 'Content-Type: application/json' -d'
{
  "analyzer": "ik_max_word",
  "text": "疫情来临,房地产行业迎来冷淡期"
}
'

# 测试 ik_smart 分词器
curl -X POST "kv1:9200/_analyze?pretty" -H 'Content-Type: application/json' -d'
{
  "analyzer": "ik_smart",
  "text": "疫情来临,房地产行业迎来冷淡期"
}
'

如果返回结果中包含正确的分词列表,则说明 IK 分词器已成功集成。

这篇文章对您有帮助吗?

平均评分 0 / 5. 次数: 0

尚无评价,您可以第一个评哦!

非常抱歉,这篇文章对您没有帮助.

烦请您告诉我们您的建议与意见,以便我们改进,谢谢您。