首页 > 其他分享 >docker安装solr

docker安装solr

时间:2022-10-27 13:57:56浏览次数:107  
标签:xml conf solr https docker 安装 appLog

目录

一、简介

solr是一个基于Lucene的Java搜索引擎服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。

二、docker安装

1、安装镜像

docker pull solr:8.11.1

2、新建目录

mkdir -p /home/apps/solr/conf

3、复制配置文件

# 运行一个临时solr
docker run --name solr -d -p 8983:8983 solr:8.11.1

# 复制配置文件
docker cp solr:/opt/solr/ /home/apps/solr/conf

# 停止并删除solr
docker stop solr && docker rm solr

4、创建并启动

docker run \
-d \
--name solr \
--restart=always \
--privileged=true \
-p 6016:8983 \
-v /home/apps/solr/conf:/opt/solr \
solr:8.11.1

5、访问

三、创建solr核心命令

例:创建一个名叫appLog的库 生成的库存储在 /var/solr/data/appLog 目录

1、命令方式创建

# 创建命令
docker exec -it --user=solr solr bin/solr create -c appLog

# 删除核心命令
docker exec -it --user=solr solr bin/solr delete -c appLog

2、在界面上创建

docker exec -it solr /bin/bash

# 创建库目录
mkdir /var/solr/data/appLog

# 复制配置文件到库目录
cp -r /opt/solr/server/solr/configsets/_default/conf /var/solr/data/appLog

# 登录solr界面,在Core Admin里新建appLog

4、更新字段

# 将managed-schema复制到主机并修改内容
docker cp solr:/var/solr/data/xytbHttpLog/conf/managed-schema ./

# 将managed-schema复制回容器内
docker cp managed-schema solr:/var/solr/data/xytbHttpLog/conf/

四、配置solr登录密码

1、添加帐号

vim /home/apps/solr/conf/server/etc/verify.properties

# 用户名 密码 权限
user: pass,admin
user1: pass,admin
user3: pass,admin

2、引入账号配置文件

vim /home/apps/solr/conf/server/contexts/solr-jetty-context.xml

# 添加以下内容

  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
        <Set name="name">verify—name</Set>
        <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/verify.properties</Set>
      </New>
    </Set>
  </Get>
  
#最终结果如下  

<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure_9_0.dtd">
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
  <Set name="contextPath"><Property name="hostContext" default="/solr"/></Set>
  <Set name="war"><Property name="jetty.base"/>/solr-webapp/webapp</Set>
  <Set name="defaultsDescriptor"><Property name="jetty.base"/>/etc/webdefault.xml</Set>
  <Set name="extractWAR">false</Set>
  <Get name="securityHandler">
    <Set name="loginService">
      <New class="org.eclipse.jetty.security.HashLoginService">
        <Set name="name">verify—name</Set>
        <Set name="config"><SystemProperty name="jetty.home" default="."/>/etc/verify.properties</Set>
      </New>
    </Set>
  </Get>
</Configure>

3、修改启动应用程序web.xml文件

vim /home/apps/solr/conf/server/solr-webapp/webapp/WEB-INF/web.xml

# 在最后追加以下内容

  <security-constraint>
    <web-resource-collection>
      <web-resource-name>Solr</web-resource-name>
      <url-pattern>/</url-pattern>
    </web-resource-collection>
    <auth-constraint>
      <role-name>admin</role-name>
    </auth-constraint>
  </security-constraint>
  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>verify-name</realm-name>
  </login-config>

4、重启solr

docker restart solr

五、接口操作

1、删除数据

# 删除9-18号之前的所有数据
curl 'http://127.0.0.1:6016/solr/appLog/update?commit=true' -H 'Content-Type: text/xml' -d '<delete><query>createTime:[* TO 2022-09-18T15:30:01Z]</query></delete>' -u 'admin:123456'

# 删除30天前的数据
curl 'http://127.0.0.1:6016/solr/appLog/update?commit=true' -H 'Content-Type: text/xml' -d '<delete><query>createTime:[* TO NOW-1]</query></delete>' -u 'admin:123456'

六、参考

1、solr安装及使用

2、solor帐号配置

3、logback自定义appender

4、springboot使用

标签:xml,conf,solr,https,docker,安装,appLog
From: https://www.cnblogs.com/lvlinguang/p/16831936.html

相关文章

  • opencv-contrib-python的安装:Set OPENCV_ENABLE_NONFREE CMake option and rebuild th
    问题描述前往本页,可查看opencv-python和opencv-contrib-python的区别。​​https://docs.opencv.org/master/​​比如,SIFT就需要用到opencv-contrib-python包中的cv2.xfeat......
  • mysql5651源码安装
    如何用源码包安装MySQL数据库下载源码,里面安装说明,一般都是./configure。。。。。。makeinstall,安装起来很慢本回答由提问者推荐linux怎么安装mysql源码包这个可以这样比如......
  • 狂神说学习笔记:Docker进阶-Docker Compose
    DockerComposehttps://docs.docker.com/compose/简介Composeisatoolfordefiningandrunningmulti-containerDockerapplications.WithCompose,youuseaY......
  • Node.JS 安装(Windows 和 Linux )
    1、Linux版采用YUM方式安装。1.1、卸载旧版本查看旧版本:rpm-qa|grepnodejs卸载:卸载过程中输入y确认yumremovenodejs1.2、安装1.2.1、Hint官......
  • rpm包安装mysql
    如何用源码包安装MySQL数据库下载源码,里面安装说明,一般都是./configure。。。。。。makeinstall,安装起来很慢本回答由提问者推荐如何用源码包安装MySQL数据库下载源码,里面安......
  • 安装openruler详细步骤
    openeuler安装教程1.下载镜像版本:openEuler-20.03-LTS-x86_64-dvd.iso下载地址:https://repo.openeuler.org/openEuler-20.03-LTS/ISO/x86_64/需要工具:vmware2.安装操......
  • nginx源码编译安装
    window版本的nginx能重新编译吗?如何添加新的模块呢找到安装nginx的源码根目录,如果没有的话下载新的源码xvzfnginx-1.3.2.tar.gz查看ngixn版本极其编译参数/usr/local/ngin......
  • docker安装nginx配置
    编译安装nginx的配置文件的路径在哪这个版本不同,位置还是不同的。我的是nginx-1.9.9版本源码安装,配置文件在conf这个目录里面:/usr/local/nginx/conf/nginx.conf如果你找不见......
  • nginx安装配置 linux
    编译安装nginx的配置文件的路径在哪这个版本不同,位置还是不同的。我的是nginx-1.9.9版本源码安装,配置文件在conf这个目录里面:/usr/local/nginx/conf/nginx.conf如果你找不见......
  • nginx安装反向代理
    centos使用yum安装nginx后如何添加模块1.确认你已经安装在用的nginx信息nginx-V2.下载和此版本相同的nginx源码包并解压tar-xvzfnginx-1.10.3.tar.gz3.更新一下依赖相关包y......