1.配置java环境
Please install latest version of Java 11 or set JAVA_HOME properly.
https://jdk.java.net/java-se-ri/11
# wget https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz
wget https://download.java.net/java/GA/jdk12/GPL/openjdk-12_linux-x64_bin.tar.gz
tar -zxf openjdk-12_linux-x64_bin.tar.gz -C /opt/module/
export JAVA_HOME=/opt/module/jdk-12
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
vi /etc/profile
source /etc/profile
vi ~/.bashrc
source ~/.bashrc
export JAVA_HOME=/opt/module/jdk1.8.0_141
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
2. 配置tomcat环境
wget https://archive.apache.org/dist/tomcat/tomcat-7/v7.0.76/bin/apache-tomcat-7.0.76.tar.gz
tar -zxvf apache-tomcat-7.0.76.tar.gz -C /opt/module
mv apache-tomcat-7.0.76 tomcat
修改8080端口为80端口
tomcat所在目录为/opt/module/tomcat/
1、打开tomcat配置文件
cd /opt/module/tomcat/conf/
vi server.xml
2、打开Tomcat配置文件之后按 /8080 快速检索
3、修改端口,按 i 进行,将8080 修改为 80
4、按:wq 保存并退出
5、 重启tomcat
cd /opt/module/tomcat/
bin/shutdown.sh
bin/startup.sh
3.配置solr
wget https://archive.apache.org/dist/solr/solr/9.1.1/solr-9.1.1.tgz
tar -xzvf solr-9.1.1.tgz -C /opt/module
4.Tomcat和Solr整合
# 1.tomcat的webapps目录下创建solr目录
mkdir /opt/module/tomcat/webapps/solr
#2.solr 的目录/opt/module/solr-9.1.1/server/solr-webapp/webapp
# 将这个目录下的文件复制到tomcat下创建的目录
cp -r /opt/module/solr-9.1.1/server/solr-webapp/webapp/* /opt/module/tomcat/webapps/solr/
#添加依赖与配置
#3.找到/opt/module/solr-9.1.1/server/lib/ext目录,将所有jar包加入到tomcat的webapps/solr/WEB-INF/lib目录下。
cp -r /opt/module/solr-9.1.1/server/lib/ext/* /opt/module/tomcat/webapps/solr/WEB-INF/lib/
#4.将/opt/module/solr-9.1.1/server/resources目录下的所有文件复制到D:\Tomcat\apache-tomcat-9.0.30\webapps\solr\WEB-INF\classes目录下,classes目录不存在,需要创建
cp -r /opt/module/solr-9.1.1/server/resources/* /opt/module/tomcat/webapps/solr/WEB-INF/classes/
#5.修改log4j2.xml配置文件,把所有${sys:solr.log.dir}修改为自己的指定的真实路径 /opt/module/tomcat/webapps/solr/logs
# 创建日志存放目录
cd /opt/module/tomcat/webapps/solr
mkdir logs
#更改配置文件
cd /opt/module/tomcat/webapps/solr/WEB-INF/classes
#6.找到/opt/module/solr-9.1.1/server/lib目录,将除去jetty-*开头的所有jar包加入到tomcat的/opt/module/tomcat/webapps/solr/WEB-INF/lib目录下。
#7.创建工作空间 在tomcat的webapps/solr目录下创建solrHome目录,把该目录作为solr的工作空间,该工作空间主要用于存储创建索引的索引文件信息。
cd /opt/module/tomcat/webapps/solr/
mkdir solrHome
# 拷贝/opt/module/solr-9.1.1/server/solr/solr.xml到该目录(solrHome)下,solr才能识别该目录为solr工作空间。
cd /opt/module/solr-9.1.1/server/solr
cp solr.xml /opt/module/tomcat/webapps/solr/solrHome
#8.指定solr工作空间 告诉solr的web工程solrhome的路径。打开tomcat的webapps/solr/WEB-INF下的web.xml文件
#添加一下脚本
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>/opt/module/tomcat/webapps/solr/solrHome</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
cd /opt/module/tomcat/webapps/solr/WEB-INF
注释安全认证
#9 创建solr索引库
# 在solrHome目录下创建collection1目录,该目录用于存储创建的索引信息。
cd /opt/module/tomcat/webapps/solr/solrHome/
mkdir collection1
# 索引信息需要引入一些核心配置,对应核心配置在/opt/module/solr-9.1.1/server/solr/configsets目录
cd /opt/module/solr-9.1.1/server/solr/configsets
# 拷贝configsets该目录下的任一目录中的config文件到/opt/module/tomcat/webapps/solr/solrHome/collection1/目录中。
cp -r /opt/module/solr-9.1.1/server/solr/configsets/_default/conf /opt/module/tomcat/webapps/solr/solrHome/collection1/
2.
3.
/opt/module/solr-9.1.1/server/lib/ext
/opt/module/tomcat/webapps/solr/WEB-INF/lib
/opt/module/tomcat/webapps/solr/WEB-INF/lib
4.
/opt/module/solr-9.1.1/server/resources
/opt/module/tomcat/webapps/solr/WEB-INF/classes
5.
修改前 cat log4j2.xml
/opt/module/tomcat/webapps/solr
:
6.
/opt/module/tomcat/webapps/solr/WEB-INF/lib
/opt/module/solr-9.1.1/server/lib
7.
/opt/module/solr-9.1.1/server/solr
8.
9.
5.启动Tomcat
cd /opt/module/tomcat/bin
./startup.sh
6.启动solr
bin\solr start
./bin/solr start -h localhost -p 8983 -d server -s solr -m 512m -force
7.打开主机的防火墙
编辑防火墙配置文件
sudo vi /etc/pf.conf
加入规则
pass in proto tcp from any to any port 8080
保存并退出编辑器,重新加载pf配置文件使其生效
sudo pfctl -f /etc/pf.conf
启用pf防火墙
sudo pfctl -e
:w !sudo tee -a %
8.另外一种办法
# 拉取镜像
docker pull solr
# 创建容器
docker run --name my_solr -d -p 8983:8983 solr
#1.创建solr核心
//创建名为my_core的核心
docker exec -it --user=solr my_solr bin/solr create -c my_core
//删除核心命令
docker exec -it --user=solr my_solr bin/solr delete -c my_core
#2.修改solr.in.sh.orig权限(可选)
如果你的solr使用的是root启动,solr初始化检查时会报一些警告信息,最重要的是在使用solr时,因为是root用户,无权限操作,服务器的内存会被大量占用,严重时会导致OOM问题。
//1.此文件位置在/opt/solr/bin目录下
//进入solr容器
docker exec -it -u root my_solr /bin/bash
cd /opt/solr/bin
//安装vim命令:apt-get install vim(如果提示:Unable to locate package vim,则需要敲:apt-get update)
//等更新完毕以后再敲命令: apt-get install vim
vim solr.in.sh.orig
//找到SOLR_ULIMTIT_CHECKS行,默认为true,这里改为false
SOLR_ULIMTIT_CHECKS=false
访问浏览器
127.0.0.1:8983/solr (自己的ip + 端口 + /solr)