diff --git a/Dockerfile b/Dockerfile index 120a96f..7bfc7bf 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,18 +1,25 @@ # https://solr.apache.org/guide/8_9/taking-solr-to-production.html -FROM solr:8.11.4 +ARG SOLR_VERSION=9.9.0 +FROM solr:$SOLR_VERSION +ARG SOLR_VERSION ENV SOLR_CORE_DIR=${SOLR_HOME}/islandora8 EXPOSE 8983 -COPY --link --chown=${SOLR_UID}:${SOLR_GID} islandora8/. ${SOLR_CORE_DIR} +COPY --link --chown=${SOLR_UID}:${SOLR_GID} islandora8/. ${SOLR_CORE_DIR} # renovate: datasource=github-releases depName=dbmdz/solr-ocrhighlighting ARG SOLR_OCRHIGHLIGHTING_VERSION=0.9.4 USER root -ENV SOLR_HOCR_PLUGIN_PATH=/opt/solr_extra_lib/ocrhighlighting/lib -RUN mkdir -p $SOLR_HOCR_PLUGIN_PATH -ADD --link --chown=0:${SOLR_GID} --chmod=040 https://github.com/dbmdz/solr-ocrhighlighting/releases/download/$SOLR_OCRHIGHLIGHTING_VERSION/solr-ocrhighlighting-$SOLR_OCRHIGHLIGHTING_VERSION-solr78.jar $SOLR_HOCR_PLUGIN_PATH + +ARG SOLR_PATH=/opt/solr-${SOLR_VERSION} +ENV SOLR_HOCR_PLUGIN_PATH=$SOLR_PATH/lib + +# extraction,langid,ltr,analysis-extras are required by search_api_solr, so +# let's set 'em by default. +ENV SOLR_MODULES=extraction,langid,ltr,analysis-extras +ADD --link --chown=0:0 --chmod=444 https://github.com/dbmdz/solr-ocrhighlighting/releases/download/$SOLR_OCRHIGHLIGHTING_VERSION/solr-ocrhighlighting-$SOLR_OCRHIGHLIGHTING_VERSION.jar $SOLR_HOCR_PLUGIN_PATH/ USER solr # https://solr.apache.org/guide/8_9/basic-authentication-plugin.html diff --git a/islandora8/conf/schema.xml b/islandora8/conf/schema.xml index 1382385..bc22c9e 100644 --- a/islandora8/conf/schema.xml +++ b/islandora8/conf/schema.xml @@ -30,7 +30,7 @@ It should be kept correct and concise, usable out-of-the-box. For more information, on how to customize this file, please see - http://wiki.apache.org/solr/SchemaXml + https://solr.apache.org/guide/solr/latest/indexing-guide/schema-elements.html PERFORMANCE NOTE: this schema includes many optional features and should not be used for benchmarking. To improve performance one could @@ -49,7 +49,7 @@ that avoids logging every request --> - + - + + + - + - - + + - - + + - - + + - - + + - + - + - - + + - - + + - - - - - - + + + + + + - - + + - - + + - - + + - - + + - - + + - - + + @@ -267,9 +269,11 @@ single-valued and either required or have a default value. --> + + + @@ -372,7 +377,7 @@ --> - + diff --git a/islandora8/conf/schema_extra_types.xml b/islandora8/conf/schema_extra_types.xml index 3d52bb0..6333428 100644 --- a/islandora8/conf/schema_extra_types.xml +++ b/islandora8/conf/schema_extra_types.xml @@ -2,7 +2,7 @@ Edge NGram String Field 6.0.0 --> - + @@ -19,12 +19,13 @@ Edge NGram Text Field 7.0.0 --> - + - + + @@ -32,7 +33,7 @@ - + @@ -99,18 +100,19 @@ Fulltext Phonetic 7.0.0 --> - + - + + - + @@ -147,7 +149,7 @@ Fulltext String Field 6.0.0 --> - + @@ -187,20 +189,21 @@ Language Undefined Text Field 7.0.0 --> - + - + + - - + + @@ -212,10 +215,10 @@ Language Undefined Text Field spellcheck 7.0.0 --> - + - + @@ -230,7 +233,7 @@ NGram String Field 6.0.0 --> - + @@ -247,12 +250,13 @@ NGram Text Field 7.0.0 --> - + - + + @@ -260,7 +264,7 @@ - + diff --git a/islandora8/conf/solrconfig.xml b/islandora8/conf/solrconfig.xml index c16e0cc..96ee058 100644 --- a/islandora8/conf/solrconfig.xml +++ b/islandora8/conf/solrconfig.xml @@ -9,9 +9,9 @@ - + - ${solr.luceneMatchVersion:LUCENE_80} + ${solr.luceneMatchVersion:LUCENE_90} - + + - - + + - - + + - - - + + @@ -223,7 +229,7 @@ 'simple' is the default More details on the nuances of each LockFactory... - http://wiki.apache.org/lucene-java/AvailableLockFactories + https://cwiki.apache.org/confluence/display/lucene/AvailableLockFactories --> ${solr.lock.type:native} @@ -284,6 +290,7 @@ solr data directory. --> ${solr.ulog.dir:} + ${solr.ulog.numVersionBuckets:65536} + + + + + + + + - - - 5 - - - diff --git a/islandora8/conf/solrconfig_query.xml b/islandora8/conf/solrconfig_query.xml index 5bdd696..21261d2 100644 --- a/islandora8/conf/solrconfig_query.xml +++ b/islandora8/conf/solrconfig_query.xml @@ -1,46 +1,46 @@ - + - + - + - + - + true false 20 200 diff --git a/islandora8/conf/solrcore.properties b/islandora8/conf/solrcore.properties index 3957818..a8ad8c1 100644 --- a/islandora8/conf/solrcore.properties +++ b/islandora8/conf/solrcore.properties @@ -2,7 +2,7 @@ solr.replication.master=false solr.replication.slave=false solr.replication.pollInterval=00:00:60 solr.replication.masterUrl=http://localhost:8983/solr -solr.replication.confFiles=schema.xml,schema_extra_types.xml,schema_extra_fields.xml,elevate.xml,stopwords_en.txt,protwords_en.txt,accents_en.txt,synonyms_en.txt,stopwords_und.txt,protwords_und.txt,accents_und.txt,synonyms_und.txt +solr.replication.confFiles=schema.xml,schema_extra_types.xml,schema_extra_fields.xml,elevate.xml,stopwords_en.txt,protwords_en.txt,accents_en.txt,synonyms_en.txt,stopwords_und.txt,synonyms_und.txt,protwords_und.txt,accents_und.txt solr.mlt.timeAllowed=2000 solr.selectSearchHandler.timeAllowed=-1 solr.autoCommit.MaxDocs=-1 @@ -10,4 +10,4 @@ solr.autoCommit.MaxTime=15000 solr.autoSoftCommit.MaxDocs=-1 solr.autoSoftCommit.MaxTime=5000 solr.install.dir=/opt/solr -solr.luceneMatchVersion=8.11.4 +solr.luceneMatchVersion=9.12.2 diff --git a/islandora8/data/.gitignore b/islandora8/data/.gitignore new file mode 100644 index 0000000..72e8ffc --- /dev/null +++ b/islandora8/data/.gitignore @@ -0,0 +1 @@ +* diff --git a/islandora8/data/index/segments_1 b/islandora8/data/index/segments_1 deleted file mode 100644 index 6f729a3..0000000 Binary files a/islandora8/data/index/segments_1 and /dev/null differ diff --git a/islandora8/data/index/write.lock b/islandora8/data/index/write.lock deleted file mode 100644 index e69de29..0000000 diff --git a/solr.in.sh b/solr.in.sh index a587bd5..9eae590 100644 --- a/solr.in.sh +++ b/solr.in.sh @@ -1,4 +1,3 @@ # https://solr.apache.org/guide/8_1/basic-authentication-plugin.html#enable-basic-authentication SOLR_AUTH_TYPE=basic SOLR_AUTHENTICATION_OPTS=-Dbasicauth=drupal:drupal -SOLR_OPTS="$SOLR_OPTS -Dsolr.hocr.plugin.path=${SOLR_HOCR_PLUGIN_PATH}"