So installieren Sie Solr 8.6.2 in Docker und konfigurieren den chinesischen Wortsegmentierer

So installieren Sie Solr 8.6.2 in Docker und konfigurieren den chinesischen Wortsegmentierer

1. Umgebungsversion

Docker-Version 19.03.12

centos7

solr8.6.2

2. Docker-Installation

1. Automatische Installation mit dem offiziellen Installationsskript

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun

2. Verwenden Sie den inländischen Daocloud-Ein-Klick-Installationsbefehl:

curl -sSL https://get.daocloud.io/docker | sh

3. Installieren Sie solr8.6.2 im Docker. 1. Ziehen Sie solr in Docker.

Docker-Pull Solr

2. Erstellen und aktivieren Sie den Solr-Container

docker run --name blog-solr -d -p 8983:8983 solr // blog-solr kann von Ihnen selbst benannt werden

// Parameterdetails

Ausführen des Containers
-d Im Hintergrund ausführen
-p Container-Port- und Host-Port-Zuordnung – Name Containername
blog-solr bezieht sich auf den Bildnamen

3. Den Kern schaffen

docker exec -it --user=solr blog-solr bin/solr create_core -c Ik_core 

Bildbeschreibung hier einfügen

Die Meldung „Neuen Kern 'Ik_core' erstellt“ wird angezeigt. Dies bedeutet, dass mehr als

4. Browserzugriff

Geben Sie IP:8983 in den Browser ein, um auf meinen Server zuzugreifen.

Bildbeschreibung hier einfügen

5. Solr konfiguriert den chinesischen Wortsegmentierer 5.2 Laden Sie die Ik-Datei herunter

Link: https://pan.baidu.com/s/1pkI9ZCThkDdzj4MWg3MO9A Extraktionscode: pgv8

 // 創建創建個目錄將解壓的文件放在這里mkdir /mnt/Ik/

Bildbeschreibung hier einfügen

5.2 Konfigurationsdatei kopieren

docker cp ik-analyzer-8.3.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/lib/
docker cp ik-analyzer-solr7-7.x.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/lib/
docker cp solr-dataimporthandler-8.4.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/lib/
docker cp solr-dataimporthandler-extras-8.4.0.jar blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/lib/

Betreten Sie den Solr-Container und erstellen Sie einen Ordner

docker exec -it --user=root blog-solr /bin/bash
cd /opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF
mkdir-Klassen
Ausfahrt
docker cp IKAnalyzer.cfg.xml blog-solr:/opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/classes/

5.3 IKAnalyzer.cfg.xml

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Eigenschaften SYSTEM "http://java.sun.com/dtd/properties.dtd">

<Eigenschaften>
	<comment>Erweiterte IK Analyzer-Konfiguration</comment>
		<!--Benutzer können hier ihr eigenes erweitertes Wörterbuch konfigurieren-->
	<entry key="ext_dict">ext.dic;</entry>
		<!--Benutzer können hier ihr eigenes erweitertes Stoppwortwörterbuch konfigurieren-->
	<entry key="ext_stopwords">Stoppwort.dic;</entry>
</Eigenschaften>

5.4 Verwaltetes Schema ändern

docker exec -it --user=root blog-solr /bin/bash
cp /opt/solr-8.6.2/contrib/analysis-extras/lucene-libs/lucene-analyzers-smartcn-8.6.2.jar /opt/solr-8.6.2/server/solr-webapp/webapp/WEB-INF/lib/
cd /var/solr/data/Ik_core/conf
vim verwaltetes Schema

Wenn Sie vim nicht haben, können Sie vi verwenden oder es mit apt-get install vim installieren.

Fügen Sie unten hinzu:

<!-- ik-Wortsegmentierer -->
 <Feldtyp Name="text_ik" Klasse="solr.TextField">
	 <Analysatortyp="Index">
		 <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="false" conf="ik.conf"/>
		 <filter class="solr.LowerCaseFilterFactory"/>
	 </Analysator>
	 <Analysatortyp="Abfrage">
		 <tokenizer class="org.wltea.analyzer.lucene.IKTokenizerFactory" useSmart="true" conf="ik.conf"/>
		 <filter class="solr.LowerCaseFilterFactory"/>
	 </Analysator>
 </Feldtyp>

 <fieldType name="text_cn" class="solr.TextField" positionIncrementGap="100">
	 <Analysatortyp="Index">
		 <tokenizer-Klasse="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
	 </Analysator>
	 <Analysatortyp="Abfrage">
		 <tokenizer-Klasse="org.apache.lucene.analysis.cn.smart.HMMChineseTokenizerFactory"/>
	 </Analysator>
 </Feldtyp> 

Bildbeschreibung hier einfügen

5.5 solrconfig.xml ändern

Unten hinzufügen

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> 
 <lst name="Voreinstellungen">
  <str name="config">db-data-config.xml</str> 
 </lst> 
</AnfrageHandler> 

Bildbeschreibung hier einfügen

Starten Sie Solr neu

Ausfahrt
Docker Neustart Blog-Solr

4. Testen

1. Überprüfen Sie, ob der Wortsegmentierer erfolgreich konfiguriert ist

Bildbeschreibung hier einfügen

2. Testen Sie, ob der Wortsegmentierer Wörter normal segmentieren kann

Bildbeschreibung hier einfügen

3. Testen Sie die Suchfunktion

Bildbeschreibung hier einfügen

Dies ist das Ende dieses Artikels über die Installation von Solr 8.6.2 in Docker und die Konfiguration des chinesischen Wortsegmentierers. Weitere Informationen zur Konfiguration des chinesischen Wortsegmentierers in Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen!

Das könnte Sie auch interessieren:
  • Java implementiert eine einfache Wortsegmentierungsfunktion
  • Detaillierte Erklärung zur Bereitstellung von Elasticsearch Kibana und IK Word Segmenter im Docker
  • So installieren Sie den Kibana-Tokenizer im Docker-Container
  • So installieren Sie den chinesischen Wortsegmentierer elasticsearch-analysis-ik
  • Solr implementiert benutzerdefinierte Wortsegmentierung durch Sonderzeichen
  • So implementieren Sie einen leistungsstarken chinesischen Wortsegmentierer in iOS
  • JAVA StringBuffer-Klasse und StringTokenizer-Klassencodeanalyse
  • Detaillierte Erklärung der StringTokenizer-Klasse in Java (empfohlen)
  • Ein kurzer Vortrag über Tokenizer

<<:  Eine detaillierte Anleitung zu benutzerdefinierten Anweisungen in Vue

>>:  So fragen Sie ab, ob die MySQL-Tabelle gesperrt ist

Artikel empfehlen

Verwendung des SerialPort-Moduls in Node.js

Inhaltsverzeichnis Zweck Modulinstallation Grundl...

Tutorial zum Konfigurieren und Verwenden des i3-Fenstermanagers unter Linux

In diesem Artikel zeige ich Ihnen, wie Sie i3 auf...

UrlRewriter-Caching-Probleme und eine Reihe damit verbundener Untersuchungen

Beim Entwickeln einer Website-Funktion kann der S...

Mehrere spezifische Methoden zur MySQL-Speicherplatzbereinigung

Inhaltsverzeichnis Vorwort 1. Überprüfen Sie die ...

jQuery realisiert den Effekt der Sitzplatzauswahl und -reservierung im Theater

jQuery realisiert den Effekt der Sitzplatzauswahl...

Website-Homepage-Design im Illustrationsstil Neuer Trend im Website-Design

Sie können sehen, dass ihre visuellen Effekte sehr...

Detaillierte Erklärung des in JavaScript integrierten Date-Objekts

Inhaltsverzeichnis Date-Objekt Erstellen eines Da...

Eine einfache und eingehende Studie zu Async und Await in JavaScript

Inhaltsverzeichnis 1. Einleitung 2. Detaillierte ...

Detailliertes Beispiel für JavaScript-Array-Methoden

Inhaltsverzeichnis Einführung Erstellen eines Arr...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 8.0.18 (Linux)

Dieser Artikel zeichnet das grafische Tutorial zu...

jQuery implementiert Funktionen zum Reduzieren und Erweitern von Artikeln

Dieses Artikelbeispiel teilt den spezifischen Cod...