1、拉取 Solr 镜像;
docker pull solr:7.4.0
2、启动 Solr 容器,即可访问 http://ip:8983/ ;
docker run --name taotao-solr -d -p 8983:8983 -t solr:7.4.0
3、新建 SolrCore,名称为 collection1;
docker exec -it --user=solr taotao-solr bin/solr create_core -c collection1
4、为了方便后续修改配置,将容器 solr 文件拷贝本地 /usr/local/solr/ 路径下;
docker cp taotao-solr:/opt/solr/ /usr/local/ # 容器拷贝宿主机
5、设置中文分词 smartcn;
5.1 进入容器
docker exec -it taotao-solr /bin/bash
5.2 定位Solr7自带的中文分词器 smartcn 的jar包位置 /opt/solr/contrib/analysis-extras/lucene-libs;
5.3 进入创建的 solrcore: collection1 配置目录 /opt/solr/server/solr/collection1/conf ,修改 solrconfig.xml 添加 smartcn 包的 lib 标签;
solrconfig.xml
<lib dir="${solr.install.dir:../../../..}/contrib/extraction/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-cell-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/clustering/lib/" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-clustering-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/langid/lib/" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-langid-\d.*\.jar" />
<lib dir="${solr.install.dir:../../../..}/contrib/velocity/lib" regex=".*\.jar" />
<lib dir="${solr.install.dir:../../../..}/dist/" regex="solr-velocity-\d.*\.jar" />
添加
<lib dir="${solr.install.dir:../../../..}/contrib/analysis-extras/lucene-libs" regex="lucene-analyzers-smartcn-7.4.0.jar" />
添加
<requestHandler name="/dataimport" class="solr.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
5.4 在 managed-schema
中最后一行添加中文分词的 FieldType ;
<fieldType name="cn_text" class="solr.TextField" >
<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>
<field name="category" type="cn_text" indexed="true"/>
<field name="title" type="cn_text" indexed="true"/>
<field name="content" type="cn_text" indexed="true"/>
<field name="keytext" type="text_general" indexed="true" stored="false" multiValued="true"/>
<copyField source="title" dest="keytext"/>
<copyField source="content" dest="keytext"/>
5.5 新建 vi data-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.31.31:3306/db" user="root" password="password" />
<document> ####transformer="HTMLStripTransformer" 一定要选、否则导入时会出错
<entity name="subject1" transformer="HTMLStripTransformer" query="SELECT id,'报修维护' AS category , CONCAT(initiator,initiator_hourse_num,initiator_phone) AS title, content FROM t1">
<field name="id" column="id"/>
<field name="title" column="title" stripHTML="true"/>
<field name="category" column="title" stripHTML="true"/>
<field name="content" column="title" stripHTML="true"/>
</entity>
<entity name="subject2" transformer="HTMLStripTransformer" query="SELECT id,'报修维护' AS category , CONCAT(initiator,initiator_hourse_num,initiator_phone) AS title, content FROM t2">
<field name="id" column="id"/>
<field name="title" column="title" stripHTML="true"/>
<field name="category" column="title" stripHTML="true"/>
<field name="content" column="title" stripHTML="true"/>
</entity>
</document>
</dataConfig>
5.6jar包配置
/solr/dist$ cp solr-dataimporthandler-* /usr/local/solr/server/solr-webapp/webapp/WEB-INF/lib
cd /usr/local/solr/server/solr-webapp/webapp/WEB-INF/lib
wget http://url/mysql.jar
6.上传配置,重启solr服务
docker cp /usr/local/solr/server/solr/collection1/conf/solrconfig.xml taotao-solr:/opt/solr/server/solr/collection1/conf/solrconfig.xml
docker cp /usr/local/solr/server/solr/collection1/conf/managed-schema taotao-solr:/opt/solr/server/solr/collection1/conf/managed-schema
docker restart taotao-solr
分享到:
相关推荐
Windows版本的单机Solr适用于在Windows操作系统上搭建和运行搜索服务,它提供了高效、可扩展的搜索和分析能力。这个压缩包包含了运行Solr所需的所有组件,包括Solr服务器、配置文件和相关的文档,方便用户在本地快速...
Solr 7.5 单机版是一款基于Java的开源全文搜索引擎服务器,它提供了一种高效、可扩展的搜索和分析平台。这个搭建好的版本专为简化安装过程和快速入门而设计,允许用户轻松地在本地环境中配置和使用Solr。 Solr的...
下面将详细讲解如何在Java 1.7和Tomcat 1.7环境下搭建Solr 4.10.3单机版。 一、Java环境配置 首先,你需要确保系统已经安装了Java Development Kit (JDK)。在本例中,我们使用的版本是JDK 1.7.0_79。通过手动下载并...
"Solr单机部署" Solr是一个全文检索服务器,它基于Lucene实现,Solr只需要进行配置就可以实现全文检索服务。Solr提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。 1....
本篇将详细介绍如何在本地环境中安装并配置 Solr,包括单核心(core)和多核心的设置。 **一、Solr 单核心安装配置** 1. 首先,我们需要从 Apache Tomcat 官网下载 Tomcat,这将作为 Solr 的服务器容器。Tomcat ...
本文详细介绍了如何在Linux环境下搭建Solr 7.4的单机版和集群版,并配置IK分词器以支持中文搜索。通过以上步骤,用户可以在自己的项目中实现高效的中文文本搜索功能,提高用户体验。同时,Solr的强大扩展性也为未来...
用户使用时 会存在无法进入solr官网下载的情况,此附带安装包 和安装教程,教程为转载其他博主的,网上也有其他相关教程 https://blog.csdn.net/tgbsqliuying/article/details/51591039
本资源包包含了安装Solr单机版和集群版所需的所有相关资料,这将帮助你搭建一个高效、稳定的搜索服务环境。以下是关于Solr安装及使用的详细知识: 1. **Solr单机版安装**:首先,你需要下载最新版本的Solr压缩包,...
标题中的“一键安装伪分布式zk集群-solr集群脚本”指的是使用自动化脚本来部署Zookeeper集群和Solr集群,这种部署方式简化了传统手动安装的复杂过程,适合初学者和快速测试环境。Zookeeper是一个分布式协调服务,而...
使用SolrJ操作集群与操作单机版类似,但要注意在集群环境下,多个Solr节点之间的数据同步和负载均衡。 #### 5.1 SolrJ使用前配置 配置同单机版一样,在Maven项目中添加SolrJ依赖。 #### 5.2 添加文档 操作方法同...
7. **实时索引与搜索**:Solr具有实时索引能力,一旦文档被添加或更新,索引会立即可用,无需重启服务。 8. **多字段类型**:Solr允许为不同的字段定义不同的类型,如text字段用于全文搜索,date字段用于时间戳处理...
- 安装Solr单机版后,将solr-5.5.3目录下的dist和contrib文件夹复制到Solr home目录下,暂时不创建Core。 **3. 将Solr与ZooKeeper关联** - 修改每台Solr服务器的`solr.in.sh`文件,添加以下行以指定ZooKeeper...
通过这个项目包,你可以构建一个完整的Solr搜索服务,进行单机或集群部署,实现高效、可扩展的全文检索。对于大型企业或者需要处理大量数据的场景,Solr 6.2.1提供了强大的搜索能力,包括拼写纠错、同义词处理、评分...
单机版Solr的部署通常包括以下几个步骤: 1. **下载与解压**:首先,你需要从Apache官方网站下载最新版本的Solr,并将其解压缩到本地目录。"solr单机-tools.zip"可能已经包含了这些步骤所需的所有文件。 2. **配置...
solr4.5下载、解压、部署说明,tomcat部署说明,IK中文分词部署说明
安装Zookeeper包括解压安装包、配置data和log目录、修改zoo.cfg配置文件、创建myid文件、将Zookeeper部署到所有节点并开启相应端口,最后启动Zookeeper服务。 5. **Solr集群安装**: - 创建SolrHome目录,并赋予...
本文详细介绍了Solr的基础知识、单机安装配置流程、数据导入与同步方法,以及简要概述了Solr在Windows和Linux环境下的集群部署策略。通过本文的学习,读者能够掌握Solr的基本使用方法,并能在实际工作中应用这些技术...