Solr 是一个独立的企业级搜索应用服务器, 它对外提供类似于 web-service 的 API 接口. 用户可以通过 http 请求, 向搜索引擎服务器提交一定格式的 xml 文件, 生成索引; 也可以通过 Http Get 操作提出查找请求, 并得到 xml 格式的返回结果.
https://github.com/docker-solr/docker-solr
(1)bin:Solr 的运行脚本
(2)contrib:Solr 的一些扩展 jar 包, 用于增强 Solr 的功能
(3)dist: 该目录包含 build 过程中产生的 jar 文件, 以及相关的依赖文件
(4)data: 用于存放与 zookeeper 关联的配置文件 zoo.cfg
(5)example:Solr 工程的例子目录
部署 Solr
- $ docker run -d -it --restart=always -p 8983:8983 -privileged=true --name Solr Solr:v8.1.1
- $ docker exec -it --user=Solr Solr /bin/bash
- $ mkdir /var/Solr/data/new_core
- $ cp -r /opt/Solr-8.1.1/server/Solr/configsets/sample_techproducts_configs/conf /var/Solr/data/new_core/
- $ cp /var/Solr/data/collection1/conf/managed-schema /var/Solr/data/new_core/confschema.xml
退出容器, 拷贝配置文件和 MySQL 数据库配置 "my-data-config.xml", solrconfig.xml 加载 my-data-config.xml
- $ docker cp managed-schema Solr:/var/Solr/data/new_core/conf/
- $ docker cp my-data-config.xml Solr:/var/Solr/data/new_core/conf/
- $ docker cp solrconfig.xml Solr:/var/Solr/data/new_core/conf/
注:
如果不挂在已准备好的包 需要一下文件
- ## 拷贝驱动文件和依赖 jar 包
- $ docker cp MySQL-connector-java-5.1.47.jar Solr:/opt/Solr/server/Solr-webapp/webapp/Web-INF/lib/
- $ docker cp ik-analyzer-solr5-5.x.jar Solr:/opt/Solr-8.1.1/server/Solr-webapp/webapp/Web-INF/lib/
- $ docker cp Solr-analyzer-ik-5.1.0.jar Solr:/opt/Solr-8.1.1/server/Solr-webapp/webapp/Web-INF/lib/
- $ docker cp classes Solr:/opt/Solr-8.1.1/server/Solr-webapp/webapp/Web-INF/
- $ ls -lrt
- total 20
- -rw-r--r-- 1 root root 8245 Mar 4 13:45 stopword.dic
- -rw-r--r-- 1 root root 404 Mar 4 13:45 IKAnalyzer.cfg.xml
- -rw-r--r-- 1 root root 41 Mar 4 13:45 ext.dic
- ##
- $ docker exec -it --user=root Solr /bin/bash
- $ cd /opt/Solr-8.1.1/dist/
- $ cp -vf Solr-dataimporthandler-*/opt/Solr-8.1.1/server/Solr-webapp/webapp/Web-INF/lib/
my-data-config.xml 配置
来源: http://www.bubuko.com/infodetail-3451903.html