欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

docker 安装solr8.6.2 配置中文分词器的方法

程序员文章站 2022-06-24 21:43:04
一、环境版本docker version 19.03.12centos7solr8.6.2二、docker安装1.使用官方安装脚本自动安装curl -fssl https://get.docker.c...

一、环境版本

docker version 19.03.12

centos7

solr8.6.2

二、docker安装

1.使用官方安装脚本自动安装

curl -fssl https://get.docker.com | bash -s docker --mirror aliyun

2.使用国内 daocloud 一键安装命令:

curl -ssl https://get.daocloud.io/docker | sh

三、docker安装solr8.6.2 1.docker拉取solr

docker pull solr

2.创建并允许solr容器

docker run --name blog-solr -d -p 8983:8983 solr // blog-solr这个可用自行命名

// 参数详解

run 运行容器
-d 后台运行
-p 容器端口和宿机端口映射
– name 容器名称
blog-solr 指镜像名称

3.创建核心

docker exec -it --user=solr blog-solr bin/solr create_core -c ik_core

docker 安装solr8.6.2 配置中文分词器的方法

出现 created new core ‘ik_core' 即创建超过

4.浏览器访问

浏览器输入 ip:8983 访问 我这里是服务器上搭建的

docker 安装solr8.6.2 配置中文分词器的方法

5.solr配置中文分词器 5.2 下载ik文件

链接: https://pan.baidu.com/s/1pki9zcthkddzj4mwg3mo9a 提取码: pgv8

// 创建创建个目录将解压的文件放在这里mkdir /mnt/ik/

docker 安装solr8.6.2 配置中文分词器的方法

5.2 复制配置文件

docker cp ik-analyzer-8.3.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/lib/
docker cp ik-analyzer-solr7-7.x.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/lib/
docker cp solr-dataimporthandler-8.4.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/lib/
docker cp solr-dataimporthandler-extras-8.4.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/lib/

进入solr容器创建文件夹

docker exec -it --user=root blog-solr /bin/bash
cd /opt/solr-8.6.2/server/solr-webapp/webapp/web-inf
mkdir classes
exit
docker cp ikanalyzer.cfg.xml blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/classes/

5.3 ikanalyzer.cfg.xml

<?xml version="1.0" encoding="utf-8"?>
<!doctype properties system "http://java.sun.com/dtd/properties.dtd">

<properties>
	<comment>ik analyzer 扩展配置</comment>
		<!--用户可以在这里配置自己的扩展字典 -->
	<entry key="ext_dict">ext.dic;</entry>
		<!--用户可以在这里配置自己的扩展停止词字典-->
	<entry key="ext_stopwords">stopword.dic;</entry>
</properties>

5.4 修改managed-schema

docker exec -it --user=root blog-solr /bin/bash
cp /opt/solr-8.6.2/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-8.6.2.jar /opt/solr-8.6.2/server/solr-webapp/webapp/web-inf/lib/
cd /var/solr/data/ik_core/conf
vim managed-schema 

如果没有vim可以使用vi 或者使用apt-get install vim 安装

在最下面添加:

<!-- ik分词器 -->
 <fieldtype name="text_ik" class="solr.textfield">
	 <analyzer type="index">
		 <tokenizer class="org.wltea.analyzer.lucene.iktokenizerfactory" usesmart="false" conf="ik.conf"/>
		 <filter class="solr.lowercasefilterfactory"/>
	 </analyzer>
	 <analyzer type="query">
		 <tokenizer class="org.wltea.analyzer.lucene.iktokenizerfactory" usesmart="true" conf="ik.conf"/>
		 <filter class="solr.lowercasefilterfactory"/>
	 </analyzer>
 </fieldtype>

 <fieldtype name="text_cn" class="solr.textfield" positionincrementgap="100">
	 <analyzer type="index">
		 <tokenizer class="org.apache.lucene.analysis.cn.smart.hmmchinesetokenizerfactory"/>
	 </analyzer>
	 <analyzer type="query">
		 <tokenizer class="org.apache.lucene.analysis.cn.smart.hmmchinesetokenizerfactory"/>
	 </analyzer>
 </fieldtype>

docker 安装solr8.6.2 配置中文分词器的方法

5.5 修改solrconfig.xml

在最下面添加

<requesthandler name="/dataimport" class="org.apache.solr.handler.dataimport.dataimporthandler"> 
 <lst name="defaults">
  <str name="config">db-data-config.xml</str> 
 </lst> 
</requesthandler> 

docker 安装solr8.6.2 配置中文分词器的方法

重启solr

exit
docker restart blog-solr

四、测试

1.查看分词器是否配置成功

docker 安装solr8.6.2 配置中文分词器的方法

2.测试分词器是否能够正常分词

docker 安装solr8.6.2 配置中文分词器的方法

3.测试搜索功能

docker 安装solr8.6.2 配置中文分词器的方法

到此这篇关于docker 安装solr8.6.2 配置中文分词器的方法的文章就介绍到这了,更多相关docker 配置中文分词器内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!