docker-compose 安装solr+ikanalyzer
docker-compose.yml
version: '3.1' services: solr: image: solr restart: always container_name: solr ports: - 8983:8983
进入容器添加core
[root@linux zookeeper]# docker exec -it solr bash solr@eaed99eb2ede:/opt/solr/server/solr$ mkdir ik_core solr@eaed99eb2ede:/opt/solr/server/solr$ cd ik_core/ solr@eaed99eb2ede:/opt/solr/server/solr/ik_core$ mkdir data solr@eaed99eb2ede:/opt/solr/server/solr/ik_core$ cp -r ../configsets/sample_techproducts_configs/conf/ . solr@eaed99eb2ede:/opt/solr/server/solr/ik_core$ echo 'name=ik_core' > core.properties
solr@eaed99eb2ede:/opt/solr/server/solr/ik_core$ ls
conf core.properties data
访问solr admin
分词
Solr 对英文提供分词支持
可以看到对于中文就只能进行一个字一个字拆分,为了支持中文分词需要安装ikanalyzer插件,下载ikanalyzer
[root@linux ik-analyzer]# ls
ext.dic IKAnalyzer.cfg.xml ik-analyzer-solr5-5.x.jar solr-analyzer-ik-5.1.0.jar stopword.dic
#复制插件
[root@linux ik-analyzer]# docker cp ./ik-analyzer-solr5-5.x.jar solr:/opt/solr/server/solr-webapp/webapp/WEB-INF/lib [root@linux ik-analyzer]# docker cp ./solr-analyzer-ik-5.1.0.jar solr:/opt/solr/server/solr-webapp/webapp/WEB-INF/lib
#复制配置文件
[root@linux ik-analyzer]# docker cp ./ext.dic solr:/opt/solr/server/solr-webapp/webapp/WEB-INF
[root@linux ik-analyzer]# docker cp ./stopword.dic solr:/opt/solr/server/solr-webapp/webapp/WEB-INF
[root@linux ik-analyzer]# docker cp ./IKAnalyzer.cfg.xml solr:/opt/solr/server/solr-webapp/webapp/WEB-INF
在容器目录/opt/solr/server/solr/ik_core/conf,添加 managed-schema文件,该配置文件在上面下载地址内有
#将宿主机的文件拷贝到容器;里
docker cp ./managed-schema solr:/opt/solr/server/solr/ik_core/conf
最终的分词结果