作者:阳光美女新干线- | 来源:互联网 | 2023-06-10 15:17
本文由编程笔记#小编为大家整理,主要介绍了solr安装-docker-单机版相关的知识,希望对你有一定的参考价值。 1 安装docker环境 见安装 2 dock
本文由编程笔记#小编为大家整理,主要介绍了solr安装-docker-单机版相关的知识,希望对你有一定的参考价值。
1 安装docker环境
见安装
2 docker安装solr
2.1 拉取solr镜像(从官方镜像库)
docker pull solr:7.7.2
docker images
2.2 启动容器
#为了配置方便,希望将容器内部目录挂载出来,经尝试,直接在run的时候挂载目录无法正常启动,猜测是目录权限问题,也可能是我环境问题,后续再研究
#所以本流程先进行目录cp,赋权,然后在挂载
2.2.1 创建文件夹并赋权
mkdir -p /software/solr/server
chmod 777 /software/solr/server
2.2.2 将希望挂载的目录复制出来
#先进行构建,再cp,然后删除之前的容器,这样配置文件就被完整的cp到宿主机上,切记第二个指令目录不能写错
docker run --name solr -d -p 8983:8983 solr:7.7.2
docker cp solr:/opt/solr/server /software/solr/
docker rm -f solr
#此时如果直接构建容器,依然无法启动,容器存在但无法启动
2.2.3 将希望挂载的目录逐一赋权
chmod 777 /software/solr/server/contexts/
chmod 777 /software/solr/server/etc/
chmod 777 /software/solr/server/lib/
chmod 777 /software/solr/server/logs/
chmod 777 /software/solr/server/modules/
chmod 777 /software/solr/server/resources/
chmod 777 /software/solr/server/scripts/
chmod 777 /software/solr/server/scripts/cloud-scripts/
chmod 777 /software/solr/server/solr/
chmod 777 /software/solr/server/solr-webapp/
chmod 777 /software/solr/server/solr-webapp/webapp/
2.2.3 构建容器
# 完全相同的指令,即可构建成功
docker run --name solr -d -v /software/solr/server:/opt/solr/server -p 8983:8983 --privileged=true solr:7.7.2
docker ps
2.3 控制台管理页面查看是否启动正常
http://192.168.229.128:8983/solr/#/
2.4 新建core
docker exec -ti --user=solr my-solr bin/solr create_core -c mycore
新建完成后管理页面查看core是否新建成功
2.5 设置中文分词库smartcn
#中文分词库有多种,常用地如ikanalyzer,官方的smartcn,solr默认不安装中文分词库,如果无中文分词,在做中文搜索时就无法进行分词匹配,如下图所示:皆为单个文字
#本文使用官方分词库,后续可尝试其他分词库
#因已将容器内部配置已挂载到宿主机,则只要调整宿主机配置文件即可
2.5.1 修改对应core下的 solrconfig.xml
#添加分词lib位置
2.5.2 修改对应core下的 managed-schema
#添加如下fieldType
#或如下配置,两者应该相同
2.6 确认容器内部配置已被更改
#容器和宿主机之间的挂载目录是共享的,此处不需验证,本文只为记录相关指令及操作
#进入容器命令行
docker exec -ti --user root solr /bin/bash
#找到对应配置文件,但容器内部无vivim指令,许在容器内安装
#docker安装vim,需先进行update,不然无法安装成功
apt-get update
apt-get install vim
#经验证内部配置文件及已变更
2.7 重启solr并验证分词
#exit退出容器命令行
exit
docker restart solr
#选择之前的fieldType名称