You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@solr.apache.org by sv...@apache.org on 2023/07/21 18:07:51 UTC
svn commit: r1083697 [30/43] - in /sites/solr/guide: ./ solr/9_0/ solr/9_0/configuration-guide/ solr/9_0/deployment-guide/ solr/9_0/getting-started/ solr/9_0/indexing-guide/ solr/9_0/query-guide/ solr/9_0/upgrade-notes/ solr/9_1/ solr/9_1/configuration...
Modified: sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html
URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html?rev=1083697&r1=1083696&r2=1083697&view=diff
==============================================================================
--- sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html (original)
+++ sites/solr/guide/solr/latest/deployment-guide/solr-control-script-reference.html Fri Jul 21 18:07:42 2023
@@ -39,7 +39,7 @@
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Resources</a>
<div class="navbar-dropdown">
- <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
+ <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
<a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a>
<a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a>
<a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a>
@@ -56,25 +56,25 @@
</nav>
</header>
<div class="body">
-<div class="nav-container" data-component="solr" data-version="9_2">
+<div class="nav-container" data-component="solr" data-version="9_3">
<aside class="nav">
<div class="panels">
<!-- Solr Changes - Start -->
<div class="nav-panel-explore" data-panel="explore">
<div class="context">
<span class="title">Solr Reference Guide</span>
- <span class="version">9.2</span>
+ <span class="version">9.3</span>
</div>
<!-- Programmatically creates the component and version list -->
<ul class="components">
<li class="component is-current">
<a class="title" href="../index.html">Solr Reference Guide</a>
<ul class="versions">
- <li class="version">
- <a href="../../9_3/index.html">9.3-beta</a>
- </li>
<li class="version is-current is-latest">
- <a href="../index.html">9.2</a>
+ <a href="../index.html">9.3</a>
+ </li>
+ <li class="version">
+ <a href="../../9_2/index.html">9.2</a>
</li>
<li class="version">
<a href="../../9_1/index.html">9.1</a>
@@ -211,7 +211,7 @@
<a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a>
</li>
<li class="nav-item" data-depth="2">
- <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a>
+ <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a>
@@ -718,6 +718,9 @@
</ul>
</li>
<li class="nav-item" data-depth="2">
+ <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a>
+ </li>
+ <li class="nav-item" data-depth="2">
<a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a>
</li>
<li class="nav-item" data-depth="2">
@@ -1069,17 +1072,17 @@
</ul>
</nav>
<div class="page-versions">
- <button class="version-menu-toggle" title="Show other versions of page">9.2</button>
+ <button class="version-menu-toggle" title="Show other versions of page">9.3</button>
<div class="version-menu">
- <a class="version" href="../../9_3/deployment-guide/solr-control-script-reference.html">9.3-beta</a>
- <a class="version is-current" href="solr-control-script-reference.html">9.2</a>
+ <a class="version is-current" href="solr-control-script-reference.html">9.3</a>
+ <a class="version" href="../../9_2/deployment-guide/solr-control-script-reference.html">9.2</a>
<a class="version" href="../../9_1/deployment-guide/solr-control-script-reference.html">9.1</a>
<a class="version" href="../../9_0/deployment-guide/solr-control-script-reference.html">9.0</a>
</div>
</div>
<!-- Solr Additions - Start -->
<!-- Solr New File -->
-<span class="perma-link-copy" version="9_2">
+<span class="perma-link-copy" version="9_3">
</span><!-- Solr Additions - End -->
<div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-control-script-reference.adoc">Edit this Page</a></div>
</div>
@@ -1144,7 +1147,7 @@ However, most of the defaults are adequa
</div>
<div class="dlist">
<dl>
-<dt class="hdlist1"><code>-a "<string>"</code></dt>
+<dt class="hdlist1"><code>-a "<jvmParams>"</code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1160,7 +1163,11 @@ However, most of the defaults are adequa
</table>
<div class="paragraph">
<p>Start Solr with additional JVM parameters, such as those starting with <code>-X</code>.
-If you are passing JVM parameters that begin with <code>-D</code>, you can omit the <code>-a</code> option.</p>
+For example setting up Java debugger to attach to the Solr JVM you could pass: <code>-a "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=18983"</code>.
+In most cases, you should wrap the additional parameters in double quotes.</p>
+</div>
+<div class="paragraph">
+<p>If you are passing JVM parameters that begin with <code>-D</code>, you can omit the <code>-a</code> option.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>:</p>
@@ -1171,7 +1178,7 @@ If you are passing JVM parameters that b
</div>
</div>
</dd>
-<dt class="hdlist1"><code>-cloud</code> or <code>-c</code></dt>
+<dt class="hdlist1"><code>-j "<jettyParams>"</code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1186,10 +1193,28 @@ If you are passing JVM parameters that b
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr in SolrCloud mode, which will also launch the embedded ZooKeeper instance included with Solr.</p>
+<p>Additional parameters to pass to Jetty when starting Solr.
+For example, to add configuration folder that Jetty should read you could pass: <code>-j "--include-jetty-dir=/etc/jetty/custom/server/"</code>.
+In most cases, you should wrap the additional parameters in double quotes.</p>
</div>
+</dd>
+<dt class="hdlist1"><code>-cloud</code> or <code>-c</code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
<div class="paragraph">
-<p>This option can be shortened to simply <code>-c</code>.</p>
+<p>Start Solr in SolrCloud mode, which will also launch the embedded ZooKeeper instance included with Solr.
+The embedded ZooKeeper instance is started on Solr port+1000, so 9983 if Solr is bound to 8983.</p>
</div>
<div class="paragraph">
<p>If you are already running a ZooKeeper ensemble that you want to use instead of the embedded (single-node) ZooKeeper, you should also either specify <code>ZK_HOST</code> in <code>solr.in.sh</code>/<code>solr.in.cmd</code> (see <a href="zookeeper-ensemble.html#updating-solr-include-files" class="xref page">Updating Solr Include Files</a>) or pass the <code>-z</code> parameter.</p>
@@ -1248,16 +1273,16 @@ These examples are provided to help you
<div class="ulist">
<ul>
<li>
-<p><code>cloud</code></p>
+<p><code>cloud</code>: SolrCloud example</p>
</li>
<li>
-<p><code>techproducts</code></p>
+<p><code>techproducts</code>: Comprehensive example illustrating many of Solr’s core capabilities</p>
</li>
<li>
-<p><code>schemaless</code></p>
+<p><code>schemaless</code>: Schema-less example (schema is inferred from data during indexing)</p>
</li>
<li>
-<p><code>films</code></p>
+<p><code>films</code>: Example of starting with _default configset and adding explicit fields dynamically</p>
<div class="paragraph">
<p>See the section <a href="#running-with-example-configurations">Running with Example Configurations</a> below for more details on the example configurations.</p>
</div>
@@ -1283,14 +1308,14 @@ These examples are provided to help you
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr in the foreground.
+<p>Start Solr in the foreground and sends stdout / stderr to <code>solr-PORT-console.log</code>.
You cannot use this option when running examples with the <code>-e</code> option.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -f</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-h <hostname></code></dt>
+<dt class="hdlist1"><code>-host <hostname></code> or <code>-h <hostname></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1305,7 +1330,7 @@ You cannot use this option when running
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr with the defined hostname.
+<p>Specify the hostname for this Solr instance.
If this is not specified, <code>localhost</code> is assumed.</p>
</div>
<div class="paragraph">
@@ -1322,15 +1347,15 @@ If this is not specified, <code>localhos
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: 512m</p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr with the defined value as the min (<code>-Xms</code>) and max (<code>-Xmx</code>) heap size for the JVM.</p>
+<p>Sets the min (<code>-Xms</code>) and max (<code>-Xmx</code>) heap size for the JVM running Solr.</p>
</div>
<div class="paragraph">
-<p><strong>Example</strong>: <code>bin/solr start -m 1g</code></p>
+<p><strong>Example</strong>: <code>bin/solr start -m 4g</code> results in <code>-Xms4g -Xmx4g</code> settings.</p>
</div>
</dd>
<dt class="hdlist1"><code>-noprompt</code></dt>
@@ -1348,8 +1373,7 @@ If this is not specified, <code>localhos
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr and suppress any prompts that may be seen with another option.
-This would have the side effect of accepting all defaults implicitly.</p>
+<p>Don’t prompt for input; accept all defaults when running examples that accept user input.</p>
</div>
<div class="paragraph">
<p>For example, when using the "cloud" example, an interactive session guides you through several options for your SolrCloud cluster.
@@ -1374,7 +1398,10 @@ If you want to accept all of the default
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr on the defined port.
+<p>Specify the port to start the Solr HTTP listener on; with the classic default port for Solr being 8983.
+The specified port (SOLR_PORT) will also be used to determine the stop port.
+The stop port is defined as STOP_PORT=($SOLR_PORT-1000) and JMX RMI listen port is defined as RMI_PORT=($SOLR_PORT+10000).
+For instance, if you set -p 8985, then the STOP_PORT=7985 and RMI_PORT=18985.
If this is not specified, <code>8983</code> will be used.</p>
</div>
<div class="paragraph">
@@ -1398,15 +1425,39 @@ If this is not specified, <code>8983</co
<div class="paragraph">
<p>Sets the <code>solr.solr.home</code> system property.
Solr will create core directories under this directory.
-This allows you to run multiple Solr instances on the same host while reusing the same server directory set using the <code>-d</code> parameter.</p>
+This allows you to run multiple Solr instances on the same host while reusing the same server directory set using the <code>-d</code> parameter.
+If set, the specified directory should contain a solr.xml file, unless solr.xml exists in Zookeeper.</p>
</div>
<div class="paragraph">
<p>This parameter is ignored when running examples (<code>-e</code>), as the <code>solr.solr.home</code> depends on which example is run.</p>
</div>
<div class="paragraph">
+<p>The default value is <code>server/solr</code>.
+If passed relative dir, validation with current dir will be done, before trying default <code>server/<dir></code>.</p>
+</div>
+<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -s newHome</code></p>
</div>
</dd>
+<dt class="hdlist1"><code>-t <dir></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>solr.solr.home</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Sets the <code>solr.data.home</code> system property, where Solr will store index data in <instance_dir>/data subdirectories.
+If not set, Solr uses solr.solr.home for config and data.</p>
+</div>
+</dd>
<dt class="hdlist1"><code>-v</code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
@@ -1423,7 +1474,7 @@ This allows you to run multiple Solr ins
</table>
<div class="paragraph">
<p>Be more verbose.
-This changes the logging level of Log4j from <code>INFO</code> to <code>DEBUG</code>, having the same effect as if you edited <code>log4j2.xml</code>.</p>
+This changes the logging level of Log4j in Solr from <code>INFO</code> to <code>DEBUG</code>, having the same effect as if you edited <code>log4j2.xml</code>.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -f -v</code></p>
@@ -1445,14 +1496,14 @@ This changes the logging level of Log4j
</table>
<div class="paragraph">
<p>Be more quiet.
-This changes the logging level of Log4j from <code>INFO</code> to <code>WARN</code>, having the same effect as if you edited <code>log4j2.xml</code>.
+This changes the logging level of Log4j in Solr from <code>INFO</code> to <code>WARN</code>, having the same effect as if you edited <code>log4j2.xml</code>.
This can be useful in a production setting where you want to limit logging to warnings and errors.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -f -q</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-V</code></dt>
+<dt class="hdlist1"><code>-V</code> or <code>-verbose</code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1467,13 +1518,13 @@ This can be useful in a production setti
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr with verbose messages from the start script.</p>
+<p>Verbose messages from this script.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -V</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-z <zkHost></code></dt>
+<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1488,11 +1539,11 @@ This can be useful in a production setti
</tbody>
</table>
<div class="paragraph">
-<p>Start Solr with the defined ZooKeeper connection string.</p>
+<p>Zookeeper connection string, this option is only used with the <code>-c</code> option, to start Solr in SolrCloud mode.
+If <code>ZK_HOST</code> is not specified in <code>solr.in.sh</code>/<code>solr.in.cmd</code> and this option is not provided, Solr will start the embedded ZooKeeper instance and use that instance for SolrCloud operations.</p>
</div>
<div class="paragraph">
-<p>This option is only used with the <code>-c</code> option, to start Solr in SolrCloud mode.
-If <code>ZK_HOST</code> is not specified in <code>solr.in.sh</code>/<code>solr.in.cmd</code> and this option is not provided, Solr will start the embedded ZooKeeper instance and use that instance for SolrCloud operations.</p>
+<p>Set the <code>ZK_CREATE_CHROOT</code> environment variable to true if your ZK host has a chroot path, and you want to create it automatically.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr start -c -z server1:2181,server2:2181</code></p>
@@ -1729,7 +1780,7 @@ If you are running more than one instanc
</tbody>
</table>
<div class="paragraph">
-<p>Stop all running Solr instances that have a valid PID.</p>
+<p>Find and stop all running Solr servers on this host that have a valid PID.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr stop -all</code></p>
@@ -1756,6 +1807,27 @@ If you are running more than one instanc
<p><strong>Example</strong>: <code>bin/solr stop -k solrrocks</code></p>
</div>
</dd>
+<dt class="hdlist1"><code>-V</code> or <code>-verbose</code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Stop Solr with verbose messages from this script.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr stop -V</code></p>
+</div>
+</dd>
</dl>
</div>
</div>
@@ -1780,7 +1852,7 @@ X.Y.0</code></pre>
<div class="sect2">
<h3 id="status"><a class="anchor" href="#status"></a>Status</h3>
<div class="paragraph">
-<p>The <code>status</code> command displays basic JSON-formatted information for any Solr nodes found running on the local system.</p>
+<p>The <code>status</code> command displays basic JSON-formatted status information for all locally running Solr servers.</p>
</div>
<div class="paragraph">
<p>The <code>status</code> command uses the <code>SOLR_PID_DIR</code> environment variable to locate Solr process ID files to find running Solr instances, which defaults to the <code>bin</code> directory.</p>
@@ -1845,7 +1917,39 @@ The command can either output a specifie
</div>
</div>
<div class="paragraph">
-<p>Use <code>bin/solr assert -help</code> for a full list of options.</p>
+<p>The basic usage of <code>bin/solr assert</code> is:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">$ bin/solr assert -h
+usage: bin/solr assert [-m <message>] [-e] [-rR] [-s <url>] [-S <url>] [-c
+ <url>] [-C <url>] [-u <dir>] [-x <dir>] [-X <dir>]
+ -c,--cloud <url> Asserts that Solr is running in cloud mode.
+ Also fails if Solr not running. URL should
+ be for root Solr path.
+ -C,--not-cloud <url> Asserts that Solr is not running in cloud
+ mode. Also fails if Solr not running. URL
+ should be for root Solr path.
+ -e,--exitcode Return an exit code instead of printing
+ error message on assert fail.
+ -help Print this message
+ -m,--message <message> Exception message to be used in place of
+ the default error message.
+ -R,--not-root Asserts that we are NOT the root user.
+ -r,--root Asserts that we are the root user.
+ -S,--not-started <url> Asserts that Solr is NOT running on a
+ certain URL. Default timeout is 1000ms.
+ -s,--started <url> Asserts that Solr is running on a certain
+ URL. Default timeout is 1000ms.
+ -t,--timeout <ms> Timeout in ms for commands supporting a
+ timeout.
+ -u,--same-user <directory> Asserts that we run as same user that owns
+ <directory>.
+ -verbose Enable more verbose command output.
+ -x,--exists <directory> Asserts that directory <directory> exists.
+ -X,--not-exists <directory> Asserts that directory <directory> does NOT
+ exist.</code></pre>
+</div>
</div>
</div>
<div class="sect2">
@@ -1878,16 +1982,32 @@ The health report provides information a
</tr>
</tbody>
</table>
-<div class="literalblock">
-<div class="content">
-<pre>Name of the collection to run a healthcheck against.</pre>
-</div>
+<div class="paragraph">
+<p>Name of the collection to run a healthcheck against.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>bin/solr healthcheck -c gettingstarted</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-z <zkhost></code></dt>
+<dt class="hdlist1"><code>-solrUrl <url></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Base Solr URL, which can be used in SolrCloud mode to determine the ZooKeeper connection string if that’s not known.</p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-z <zkhost></code> or <code>-zkHost <zkhost></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -1980,9 +2100,8 @@ This parameter is unnecessary if <code>Z
<div class="sect2">
<h3 id="create-a-core-or-collection"><a class="anchor" href="#create-a-core-or-collection"></a>Create a Core or Collection</h3>
<div class="paragraph">
-<p>The <code>create</code> command detects the mode that Solr is running in and creates either a core or collection depending on the mode.
-When running with SolrCloud, a collection would be created.
-When running a user-managed cluster or a single-node installation, a core would be created.</p>
+<p>The <code>create</code> command creates a core or collection depending on whether Solr is running in standalone (core) or SolrCloud mode (collection).
+In other words, this action detects which mode Solr is running in, and then takes the appropriate action (either <code>create_core</code> or <code>create_collection</code>).</p>
</div>
<div class="paragraph">
<p><code>bin/solr create [options]</code></p>
@@ -2061,7 +2180,7 @@ This defaults to the same name as the co
<p><strong>Example</strong>: <code>bin/solr create -n basic</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-p <port></code></dt>
+<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2086,7 +2205,7 @@ By default the script tries to detect th
<p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-s <shards></code> or <code>-shards</code></dt>
+<dt class="hdlist1"><code>-s <shards></code> or <code>-shards <shards></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2108,7 +2227,7 @@ Only applies when Solr is running in Sol
<p><strong>Example</strong>: <code>bin/solr create -s 2</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor</code></dt>
+<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor <replicas></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2155,11 +2274,315 @@ It is possible to override this warning
</dl>
</div>
</div>
+</div>
+<div class="sect2">
+<h3 id="create-a-collection"><a class="anchor" href="#create-a-collection"></a>Create a Collection</h3>
+<div class="paragraph">
+<p>The <code>create_collection</code> command creates a collection, and is only available when running in SolrCloud mode.</p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr create_collection [options]</code></p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr create_collection -help</code></p>
+</div>
+<div class="sect3">
+<h4 id="create-collection-parameters"><a class="anchor" href="#create-collection-parameters"></a>Create Collection Parameters</h4>
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>-c <name></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Required</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Name of the collection to create.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -c mycollection</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-d <confdir></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>_default</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Configuration directory to copy when creating the new collection.</p>
+</div>
+<div class="paragraph">
+<p>See the section <a href="#configuration-directories-and-solrcloud">Configuration Directories and SolrCloud</a> below for more details about this option when running in SolrCloud mode. including some built in example configurations.</p>
+</div>
+<div class="paragraph">
+<p><code>_default</code> is also known as <a href="../indexing-guide/schemaless-mode.html" class="xref page">Schemaless Mode</a>.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -d _default</code></p>
+</div>
+<div class="paragraph">
+<p>Alternatively, you can pass the path to your own configuration directory instead of using one of the built-in configurations.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -c mycoll -d /tmp/myconfig</code></p>
+</div>
+<div class="paragraph">
+<p>By default the script will upload the specified confdir directory into Zookeeper using the same name as the collection (-c) option.
+Alternatively, if you want to reuse an existing directory or create a confdir in Zookeeper that can be shared by multiple collections, use the -n option</p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-n <configName></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Name the configuration directory in Zookeeper.
+By default, the configuration will be uploaded to Zookeeper using the collection name (-c), but if you want to use an existing directory or override the name of the configuration in Zookeeper, then use the -c option.
+UMMMM…​ I COPIED THE ABOVE LINE FROM bin/solr create_collection -h output, but I don’t get it. And bin/solr create_collection -n basic -c mycoll works, it create a copy of _default as "basic" configset…​ UMMM?</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -n basic -c mycoll</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Port of a local Solr instance where you want to create the new collection.
+If not specified, the script will search the local system for a running Solr instance and will use the port of the first server it finds.</p>
+</div>
+<div class="paragraph">
+<p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to create the core in.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-s <shards></code> or <code>-shards <shards></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>1</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Number of shards to split a collection into.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -s 2</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-rf <replicas></code> or <code>-replicationFactor <replicas></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>1</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Number of copies of each document in the collection.
+The default is <code>1</code> (no replication).</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -rf 2</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-force</code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>If attempting to run create as "root" user, the script will exit with a warning that running Solr or actions against Solr as "root" can cause problems.
+It is possible to override this warning with the -force parameter.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -c foo -force</code></p>
+</div>
+</dd>
+</dl>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="create-a-core"><a class="anchor" href="#create-a-core"></a>Create a Core</h3>
+<div class="paragraph">
+<p>The <code>create_core</code> command creates a core and is only available when running in user-managed (single-node) mode.</p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr create_core [options]</code></p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr create_core -help</code></p>
+</div>
+<div class="sect3">
+<h4 id="create-core-parameters"><a class="anchor" href="#create-core-parameters"></a>Create Core Parameters</h4>
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>-c <name></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock"><strong>Required</strong></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Name of the core to create.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create -c mycore</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-d <confdir></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>_default</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>The configuration directory to use when creating a new core.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create -d _default</code></p>
+</div>
+<div class="paragraph">
+<p>Alternatively, you can pass the path to your own configuration directory instead of using one of the built-in configurations.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create_collection -c mycore -d /tmp/myconfig</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <em>see description</em></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>The port of a local Solr instance to create the new core.
+By default the script tries to detect the port by looking for running Solr instances.</p>
+</div>
+<div class="paragraph">
+<p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to create the core in.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create -p 8983</code></p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-force</code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>If attempting to run create as "root" user, the script will exit with a warning that running Solr or actions against Solr as "root" can cause problems.
+It is possible to override this warning with the -force parameter.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr create -c foo -force</code></p>
+</div>
+</dd>
+</dl>
+</div>
+</div>
<div class="sect3">
<h4 id="configuration-directories-and-solrcloud"><a class="anchor" href="#configuration-directories-and-solrcloud"></a>Configuration Directories and SolrCloud</h4>
<div class="paragraph">
<p>Before creating a collection in SolrCloud, the configuration directory used by the collection must be uploaded to ZooKeeper.
-The <code>create</code> command supports several use cases for how collections and configuration directories work.
+The <code>create</code> and <code>create_collection</code> commands supports several use cases for how collections and configuration directories work.
The main decision you need to make is whether a configuration directory in ZooKeeper should be shared across multiple collections.</p>
</div>
<div class="paragraph">
@@ -2227,12 +2650,11 @@ Consequently, we recommend that you do n
<p><code>bin/solr delete -help</code></p>
</div>
<div class="paragraph">
-<p>If running in SolrCloud mode, the <code>delete</code> command checks if the configuration directory used by the collection you are deleting is being used by other collections.
-If not, then the configuration directory is also deleted from ZooKeeper.</p>
+<p>If you’re deleting a collection in SolrCloud mode, the default behavior is to also delete the configuration directory from Zookeeper so long as it is not being used by another collection.</p>
</div>
<div class="paragraph">
<p>For example, if you created a collection with <code>bin/solr create -c contacts</code>, then the delete command <code>bin/solr delete -c contacts</code> will check to see if the <code>/configs/contacts</code> configuration directory is being used by any other collections.
-If not, then the <code>/configs/contacts</code> directory is removed from ZooKeeper.</p>
+If not, then the <code>/configs/contacts</code> directory is removed from ZooKeeper. You can override this behavior by passing -deleteConfig false when running this command.atom</p>
</div>
<div class="sect3">
<h4 id="delete-core-or-collection-parameters"><a class="anchor" href="#delete-core-or-collection-parameters"></a>Delete Core or Collection Parameters</h4>
@@ -2283,7 +2705,7 @@ If not, then the <code>/configs/contacts
<p><strong>Example</strong>: <code>bin/solr delete -deleteConfig false</code></p>
</div>
</dd>
-<dt class="hdlist1"><code>-p <port></code></dt>
+<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2299,7 +2721,7 @@ If not, then the <code>/configs/contacts
</table>
<div class="paragraph">
<p>The port of a local Solr instance to send the delete command to.
-By default the script tries to detect the port by looking for running Solr instances.</p>
+If not specified, the script will search the local system for a running Solr instance and will use the port of the first server it finds.</p>
</div>
<div class="paragraph">
<p>This option is useful if you are running multiple Solr instances on the same host, thus requiring you to be specific about which instance to delete the core from.</p>
@@ -2323,6 +2745,9 @@ By default the script tries to detect th
<div class="paragraph">
<p>Currently, this script only enables Basic Authentication, and is only available when using SolrCloud mode.</p>
</div>
+<div class="paragraph">
+<p>Must be run on the machine hosting Solr.</p>
+</div>
<div class="sect2">
<h3 id="enabling-basic-authentication"><a class="anchor" href="#enabling-basic-authentication"></a>Enabling Basic Authentication</h3>
<div class="paragraph">
@@ -2376,7 +2801,7 @@ The <code>security.json</code> file will
<div class="content">
<pre class="highlightjs highlight"><code class="language-none hljs"># The following lines added by ./solr for enabling BasicAuth
SOLR_AUTH_TYPE="basic"
-SOLR_AUTHENTICATION_OPTS="-Dsolr.httpclient.config=/path/to/solr-9.2.1/server/solr/basicAuth.conf"</code></pre>
+SOLR_AUTHENTICATION_OPTS="-Dsolr.httpclient.config=/path/to/solr-9.3.0/server/solr/basicAuth.conf"</code></pre>
</div>
</div>
</li>
@@ -2386,11 +2811,22 @@ SOLR_AUTHENTICATION_OPTS="-Dsolr.httpcli
</ul>
</div>
<div class="paragraph">
+<p>Here are some example usages:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">Usage: solr auth enable [-type basicAuth] -credentials user:pass [-blockUnknown <true|false>] [-updateIncludeFileOnly <true|false>] [-V]
+ solr auth enable [-type basicAuth] -prompt <true|false> [-blockUnknown <true|false>] [-updateIncludeFileOnly <true|false>] [-V]
+ solr auth enable -type kerberos -config "<kerberos configs>" [-updateIncludeFileOnly <true|false>] [-V]
+ solr auth disable [-updateIncludeFileOnly <true|false>] [-V]</code></pre>
+</div>
+</div>
+<div class="paragraph">
<p>The command takes the following parameters:</p>
</div>
<div class="dlist">
<dl>
-<dt class="hdlist1"><code>-credentials</code></dt>
+<dt class="hdlist1"><code>-credentials <user:pass></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2405,14 +2841,15 @@ SOLR_AUTHENTICATION_OPTS="-Dsolr.httpcli
</tbody>
</table>
<div class="paragraph">
-<p>The username and password in the format of <code>username:password</code> of the initial user.</p>
+<p>The username and password in the format of <code>username:password</code> of the initial user.
+Applicable for basicAuth only.</p>
</div>
<div class="paragraph">
<p>If you prefer not to pass the username and password as an argument to the script, you can choose the <code>-prompt</code> option.
Either <code>-credentials</code> or <code>-prompt</code> <strong>must</strong> be specified.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-prompt</code></dt>
+<dt class="hdlist1"><code>-prompt <true|false></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2427,13 +2864,13 @@ Either <code>-credentials</code> or <cod
</tbody>
</table>
<div class="paragraph">
-<p>If prompt is preferred, pass <code>true</code> as a parameter to request the script to prompt the user to enter a username and password.</p>
+<p>Prompts the user to provide the credentials. If prompt is preferred, pass <code>true</code> as a parameter to request the script prompt the user to enter a username and password.</p>
</div>
<div class="paragraph">
<p>Either <code>-credentials</code> or <code>-prompt</code> <strong>must</strong> be specified.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-blockUnknown</code></dt>
+<dt class="hdlist1"><code>-blockUnknown <true|false></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2448,11 +2885,37 @@ Either <code>-credentials</code> or <cod
</tbody>
</table>
<div class="paragraph">
-<p>When <code>true</code>, blocks all unauthenticated users from accessing Solr.
+<p>When <code>true</code>, this blocks out access to unauthenticated users from accessing Solr.
When <code>false</code>, unauthenticated users will still be able to access Solr, but only for operations not explicitly requiring a user role in the Authorization plugin configuration.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-updateIncludeFileOnly</code></dt>
+<dt class="hdlist1"><code>-solrIncludeFile <includeFilePath></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Specify the full path to the include file in the environment.
+If not specified this script looks for an include file named solr.in.sh to set environment variables. Specifically, the following locations are searched in this order:
+ <script location>/.
+ $HOME/.solr.in.sh
+ /usr/share/solr
+ /usr/local/share/solr
+ /etc/default
+ /var/solr
+ /opt/solr</p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-updateIncludeFileOnly <true|false></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2467,10 +2930,10 @@ When <code>false</code>, unauthenticated
</tbody>
</table>
<div class="paragraph">
-<p>When <code>true</code>, only the settings in <code>bin/solr.in.sh</code> or <code>bin\solr.in.cmd</code> will be updated, and <code>security.json</code> will not be created.</p>
+<p>When <code>true</code>, only update the <code>bin/solr.in.sh</code> or <code>bin\solr.in.cmd</code>, and skip actual enabling/disabling authentication (i.e. don’t update <code>security.json</code>).</p>
</div>
</dd>
-<dt class="hdlist1"><code>-z</code></dt>
+<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2490,7 +2953,7 @@ This is useful if you want to enable aut
Unnecessary if <code>ZK_HOST</code> is defined in <code>solr.in.sh</code> or <code>solr.in.cmd</code>.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-d</code></dt>
+<dt class="hdlist1"><code>-d <dir></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2509,7 +2972,7 @@ Unnecessary if <code>ZK_HOST</code> is d
It is not common to need to override the default, and is only needed if you have customized the <code>$SOLR_HOME</code> directory path.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-s</code></dt>
+<dt class="hdlist1"><code>-s <dir></code> or <code>-solr.home <dir></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2525,7 +2988,8 @@ It is not common to need to override the
</table>
<div class="paragraph">
<p>Defines the location of <code>solr.solr.home</code>, which by default is <code>server/solr</code>.
-If you have multiple instances of Solr on the same host, or if you have customized the <code>$SOLR_HOME</code> directory path, you likely need to define this.</p>
+If you have multiple instances of Solr on the same host, or if you have customized the <code>$SOLR_HOME</code> directory path, you likely need to define this.
+This is where any credentials or authentication configuration files (e.g. basicAuth.conf) would be placed.</p>
</div>
</dd>
</dl>
@@ -2598,7 +3062,7 @@ However, the <code>basicAuth.conf</code>
<h3 id="config-parameters"><a class="anchor" href="#config-parameters"></a>Config Parameters</h3>
<div class="dlist">
<dl>
-<dt class="hdlist1"><code>-c <name></code></dt>
+<dt class="hdlist1"><code>-c <name></code> or <code>-collection <name></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2649,7 +3113,7 @@ However, the <code>basicAuth.conf</code>
</tbody>
</table>
<div class="paragraph">
-<p>Name of the property to change.</p>
+<p>Name of the Config API property to apply the action to, such as: 'updateHandler.autoSoftCommit.maxTime'.</p>
</div>
</dd>
<dt class="hdlist1"><code>-value <new-value></code></dt>
@@ -2667,10 +3131,10 @@ However, the <code>basicAuth.conf</code>
</tbody>
</table>
<div class="paragraph">
-<p>Set the property to this value.</p>
+<p>Set the property to this value; accepts JSON objects and strings.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-z <zkHost></code></dt>
+<dt class="hdlist1"><code>-z <zkHost></code> or <code>-zkHost <zkHost></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2680,7 +3144,7 @@ However, the <code>basicAuth.conf</code>
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>localhost:9983</code></p></td>
</tr>
</tbody>
</table>
@@ -2689,7 +3153,7 @@ However, the <code>basicAuth.conf</code>
Unnecessary if <code>ZK_HOST</code> is defined in <code>solr.in.sh</code> or <code>solr.in.cmd</code>.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-p <port></code></dt>
+<dt class="hdlist1"><code>-p <port></code> or <code>-port <port></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -2717,7 +3181,7 @@ Unnecessary if <code>ZK_HOST</code> is d
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code><a href="http://localhost:8983/solr" class="bare">http://localhost:8983/solr</a></code></p></td>
</tr>
</tbody>
</table>
@@ -2725,6 +3189,24 @@ Unnecessary if <code>ZK_HOST</code> is d
<p>Base Solr URL, which can be used in SolrCloud mode to determine the ZooKeeper connection string if that’s not known.</p>
</div>
</dd>
+<dt class="hdlist1"><code>-s <scheme></code> or <code>-scheme <scheme></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>http</code></p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>The scheme for accessing Solr. Accepted values: http or https. Default is 'http'</p>
+</div>
+</dd>
</dl>
</div>
</div>
@@ -2746,6 +3228,20 @@ These operations are for SolrCloud mode
<div class="paragraph">
<p><code>bin/solr zk -help</code></p>
</div>
+<div class="paragraph">
+<p>The basic usage of bin/solr zk is:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-plain hljs" data-lang="plain">$ bin/solr zk -h
+Usage: solr zk upconfig|downconfig -d <confdir> -n <configName> [-z zkHost]
+ solr zk cp [-r] <src> <dest> [-z zkHost]
+ solr zk rm [-r] <path> [-z zkHost]
+ solr zk mv <src> <dest> [-z zkHost]
+ solr zk ls [-r] <path> [-z zkHost]
+ solr zk mkroot <path> [-z zkHost]</code></pre>
+</div>
+</div>
<div class="admonitionblock note">
<table>
<tr>
@@ -2762,7 +3258,7 @@ Once ZooKeeper is initialized, Solr does
<div class="sect2">
<h3 id="upload-a-configuration-set"><a class="anchor" href="#upload-a-configuration-set"></a>Upload a Configuration Set</h3>
<div class="paragraph">
-<p>Use the <code>zk upconfig</code> command to upload one of the pre-configured configuration set or a customized configuration set to ZooKeeper.</p>
+<p>Use the <code>zk upconfig</code> command to upload one of the pre-configured configuration sets or a customized configuration set to ZooKeeper.</p>
</div>
<div class="sect3">
<h4 id="zk-upload-parameters"><a class="anchor" href="#zk-upload-parameters"></a>ZK Upload Parameters</h4>
@@ -2815,7 +3311,7 @@ Choose Cloud → Tree → config
</tbody>
</table>
<div class="paragraph">
-<p>The path of the configuration set to upload.
+<p>The local directory of the configuration set to upload.
It should have a <code>conf</code> directory immediately below it that in turn contains <code>solrconfig.xml</code> etc.</p>
</div>
<div class="paragraph">
@@ -3020,8 +3516,8 @@ This command will copy from the local dr
</tbody>
</table>
<div class="paragraph">
-<p>Do a recursive copy.
-The command will fail if the <code><src></code> has children unless <code>-r</code> is specified.</p>
+<p>Recursively copy <src> to <dst>.
+The command will fail if the <code><src></code> has children and <code>-r</code> is not specified.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>-r</code></p>
@@ -3044,8 +3540,8 @@ The command will fail if the <code><s
<div class="paragraph">
<p>The file or path to copy from.
If prefixed with <code>zk:</code> then the source is presumed to be ZooKeeper.
-If no prefix or the prefix is <code>file</code>: this is the local drive.
-At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>'zk:'</code> or the command will fail.</p>
+If no prefix or the prefix is <code>file:</code> then it is presumed to be the local drive.
+At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>zk:</code> or the command will fail.</p>
</div>
<div class="paragraph">
<p><strong>Examples</strong>:</p>
@@ -3078,7 +3574,7 @@ At least one of <code><src></code>
<div class="paragraph">
<p>The file or path to copy to.
If prefixed with <code>zk:</code> then the source is presumed to be ZooKeeper.
-If no prefix or the prefix is <code>file:</code> this is the local drive.</p>
+If no prefix or the prefix is <code>file:</code> then it is presumed to be the local drive.</p>
</div>
<div class="paragraph">
<p>At least one of <code><src></code> or <code><dest></code> must be prefixed by <code>zk:</code> or the command will fail.
@@ -3123,19 +3619,39 @@ Optional if <code>ZK_HOST</code> is defi
</dl>
</div>
<div class="paragraph">
-<p>An example of this command with the parameters is:</p>
+<p>When <code><src></code> is a zk resource, <code><dest></code> may be '.'.
+If <code><dest></code> ends with '/', then <code><dest></code> will be a local folder or parent znode and the last element of the <src> path will be appended unless <code><src></code> also ends in a slash.
+<code><dest></code> may be <code>zk:</code>, which may be useful when using the <code>cp -r</code> form to backup/restore the entire zk state.
+You must enclose local paths that end in a wildcard in quotes or just end the local path in a slash.
+That is, <code>bin/solr zk cp -r /some/dir/ zk:/ -z localhost:2181</code> is equivalent to <code>bin/solr zk cp -r "/some/dir/<strong>" zk:/ -z localhost:2181</code> but <code>bin/solr zk cp -r /some/dir/\</strong> zk:/ -z localhost:2181</code> will throw an error.</p>
+</div>
+<div class="paragraph">
+<p>Here’s an example of backup/restore for a ZK configuration:</p>
+</div>
+<div class="paragraph">
+<p><strong>To copy to local</strong>: <code>bin/solr zk cp -r zk:/ /some/dir -z localhost:2181</code></p>
</div>
<div class="paragraph">
-<p>Recursively copy a directory from local to ZooKeeper.</p>
+<p><strong>To restore to ZK</strong>: <code>bin/solr zk cp -r /some/dir/ zk:/ -z localhost:2181</code></p>
</div>
<div class="paragraph">
-<p><code>bin/solr zk cp -r file:/apache/confgs/whatever/conf zk:/configs/myconf -z 111.222.333.444:2181</code></p>
+<p>The <code>file:</code> prefix is stripped, thus <code>file:/wherever</code> specifies an absolute local path and <code>file:somewhere</code> specifies a relative local path.
+All paths on Zookeeper are absolute.</p>
</div>
<div class="paragraph">
-<p>Copy a single file from ZooKeeper to local.</p>
+<p>Zookeeper nodes CAN have data, so moving a single file to a parent znode will overlay the data on the parent Znode so specifying the trailing slash can be important.</p>
</div>
<div class="paragraph">
-<p><code>bin/solr zk cp zk:/configs/myconf/managed_schema /configs/myconf/managed_schema -z 111.222.333.444:2181</code></p>
+<p>Trailing wildcards are supported when copying from localand must be quoted.</p>
+</div>
+<div class="paragraph">
+<p>Other examples are:</p>
+</div>
+<div class="paragraph">
+<p><strong>Recursively copy a directory from local to ZooKeeper</strong>: <code>bin/solr zk cp -r file:/apache/confgs/whatever/conf zk:/configs/myconf -z 111.222.333.444:2181</code></p>
+</div>
+<div class="paragraph">
+<p><strong>Copy a single file from ZooKeeper to local</strong>: <code>bin/solr zk cp zk:/configs/myconf/managed_schema /configs/myconf/managed_schema -z 111.222.333.444:2181</code></p>
</div>
</div>
</div>
@@ -3163,8 +3679,8 @@ Optional if <code>ZK_HOST</code> is defi
</tbody>
</table>
<div class="paragraph">
-<p>Do a recursive removal.
-The command will fail if the <code><path></code> has children unless <code>-r</code> is specified.</p>
+<p>Recursively delete if <code><path></code> is a directory.
+Command will fail if <code><path></code> has children and <code>-r</code> is not specified.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>-r</code></p>
@@ -3354,7 +3870,8 @@ Unnecessary if <code>ZK_HOST</code> is d
</tbody>
</table>
<div class="paragraph">
-<p>Recursively list all descendants of a znode.</p>
+<p>Recursively list all descendants of a znode.
+Only the node names are listed, not the data.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>-r</code></p>
@@ -3419,7 +3936,7 @@ Optional if <code>ZK_HOST</code> is defi
<div class="sect2">
<h3 id="create-a-znode-supports-chroot"><a class="anchor" href="#create-a-znode-supports-chroot"></a>Create a znode (supports chroot)</h3>
<div class="paragraph">
-<p>Use the <code>zk mkroot</code> command to create a znode.
+<p>Use the <code>zk mkroot</code> command to create a znode with no data.
The primary use-case for this command to support ZooKeeper’s "chroot" concept.
However, it can also be used to create arbitrary paths.</p>
</div>
@@ -3444,7 +3961,7 @@ However, it can also be used to create a
<div class="paragraph">
<p>The path on ZooKeeper to create.
Intermediate znodes will be created if necessary.
-A leading slash is assumed even if not specified.</p>
+A leading slash is assumed if not present.</p>
</div>
<div class="paragraph">
<p><strong>Example</strong>: <code>/solr</code></p>
@@ -3488,12 +4005,38 @@ Optional if <code>ZK_HOST</code> is defi
</div>
</div>
<div class="sect1">
-<h2 id="exporting-documents-to-a-file"><a class="anchor" href="#exporting-documents-to-a-file"></a>Exporting Documents to a File</h2>
+<h2 id="exporting-and-importing"><a class="anchor" href="#exporting-and-importing"></a>Exporting and Importing</h2>
<div class="sectionbody">
+<div class="sect2">
+<h3 id="exporting-documents-to-a-file"><a class="anchor" href="#exporting-documents-to-a-file"></a>Exporting Documents to a File</h3>
<div class="paragraph">
-<p>The <code>export</code> command will allow you to export documents from a collection in either JSON or Javabin format.
+<p>The <code>export</code> command will allow you to export documents from a collection in JSON, JSON with Lines, or Javabin format.
All documents can be exported, or only those that match a query.</p>
</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+This hasn’t been tested with nested child documents and your results will vary.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+The <code>export</code> command only works with in a Solr running in cloud mode.
+</td>
+</tr>
+</table>
+</div>
<div class="paragraph">
<p><code>bin/solr export [options]</code></p>
</div>
@@ -3505,7 +4048,7 @@ All documents can be exported, or only t
</div>
<div class="dlist">
<dl>
-<dt class="hdlist1"><code>url</code></dt>
+<dt class="hdlist1"><code>-url <url></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3526,7 +4069,7 @@ All documents can be exported, or only t
<p><strong>Example</strong>: <code>-url <a href="http://localhost:8983/solr/techproducts" class="bare">http://localhost:8983/solr/techproducts</a></code></p>
</div>
</dd>
-<dt class="hdlist1"><code>format</code></dt>
+<dt class="hdlist1"><code>-format <format></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3536,17 +4079,17 @@ All documents can be exported, or only t
<tbody>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>jsonl</code></p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: <code>json</code></p></td>
</tr>
</tbody>
</table>
<div class="paragraph">
-<p>The file format of the export, <code>jsonl</code> or <code>javabin</code>.
-Choosing <code>javabin</code> exports to a file with extension <code>.javabin</code> which is the native Solr format.
-This is compact and faster to import.</p>
+<p>The file format of the export, <code>json</code>, <code>jsonl</code>, or <code>javabin</code>.
+Choosing <code>javabin</code> exports in the native Solr format, and is compact and fast to import.
+<code>jsonl</code> is the Json with Lines format, learn more at <a href="https://jsonlines.org/" class="bare">https://jsonlines.org/</a>.</p>
</div>
</dd>
-<dt class="hdlist1"><code>-out</code></dt>
+<dt class="hdlist1"><code>-out <path></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3561,14 +4104,31 @@ This is compact and faster to import.</p
</tbody>
</table>
<div class="paragraph">
-<p>The file name of the export.
-If the file name ends with <code>json.gz</code> the output will be compressed into a .gz file.</p>
+<p>Either the path to the directory for the exported data to be written to, or a specific file to be written out.</p>
</div>
<div class="paragraph">
-<p>If not provided, a file will be created with the name of the collection, as in <code><collection>.json</code>.</p>
+<p>If only a directory is specified then the file will be created with the name of the collection, as in <code><collection>.json</code>.</p>
</div>
</dd>
-<dt class="hdlist1"><code>query</code></dt>
+<dt class="hdlist1"><code>-compress</code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Optional</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: false</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>If you specify <code>-compress</code> then the resulting outputting file with will be gzipped, for example <code><collection>.json.gz</code>.</p>
+</div>
+</dd>
+<dt class="hdlist1"><code>-query <query string></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3587,7 +4147,7 @@ If the file name ends with <code>json.gz
The default is <code>*:*</code> which will export all documents.</p>
</div>
</dd>
-<dt class="hdlist1"><code>fields</code></dt>
+<dt class="hdlist1"><code>-fields <fields></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3602,11 +4162,11 @@ The default is <code>*:*</code> which wi
</tbody>
</table>
<div class="paragraph">
-<p>A comma separated list of fields to be exported.
-If not provided, all fields will be included.</p>
+<p>Comma separated list of fields to be exported.
+By default all fields are fetched.</p>
</div>
</dd>
-<dt class="hdlist1"><code>limit</code></dt>
+<dt class="hdlist1"><code>-limit <number of documents></code></dt>
<dd>
<table class="tableblock frame-none grid-all fit-content">
<colgroup>
@@ -3621,7 +4181,7 @@ If not provided, all fields will be incl
</tbody>
</table>
<div class="paragraph">
-<p>The number of documents to export.
+<p>Maximum number of docs to download.
The value <code>-1</code> will export all documents.</p>
</div>
</dd>
@@ -3639,29 +4199,127 @@ The value <code>-1</code> will export al
</div>
</div>
<div class="paragraph">
-<p>Export all documents of collection <code>gettingstarted</code> into a file called <code>1MDocs.json.gz</code> as a zipped JSON file:</p>
+<p>Export all documents of collection <code>gettingstarted</code> into a file called <code>1MDocs.json.gz</code> as a compressed JSON file:</p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">bin/solr export -url http://localhost:8983/solr/gettingstarted -1 -out 1MDocs.json.gz</code></pre>
+<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">bin/solr export -url http://localhost:8983/solr/gettingstarted -1 -format json -compress -out 1MDocs</code></pre>
+</div>
</div>
</div>
<div class="sect2">
-<h3 id="importing-documents-to-a-collection"><a class="anchor" href="#importing-documents-to-a-collection"></a>Importing Documents to a Collection</h3>
+<h3 id="importing-documents-into-a-collection"><a class="anchor" href="#importing-documents-into-a-collection"></a>Importing Documents into a Collection</h3>
<div class="paragraph">
<p>Once you have exported documents in a file, you can use the <a href="../indexing-guide/indexing-with-update-handlers.html" class="xref page">/update request handler</a> to import them to a new Solr collection.</p>
</div>
<div class="paragraph">
-<p><strong>Example: import <code>jsonl</code> files</strong></p>
+<p><strong>Example: import <code>json</code> files</strong></p>
+</div>
+<div class="paragraph">
+<p>First export the documents, making sure to ignore any fields that are populated via a <code>copyField</code> by specifying what fields you want to export:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr export -url http://localhost:8983/solr/gettingstarted -fields id,name,manu,cat,features</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Create a new collection to import the exported documents into:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr create_collection -c test_collection -n techproducts</code></pre>
+</div>
</div>
<div class="paragraph">
-<p><code>curl -X POST -d @gettingstarted.json <a href="http://localhost:8983/solr/gettingstarted/update/json/docs?commit=true" class="bare">http://localhost:8983/solr/gettingstarted/update/json/docs?commit=true</a></code></p>
+<p>Now import the data with either of these methods:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ curl -X POST -d @gettingstarted.json 'http://localhost:8983/solr/test_collection/update/json/docs?commit=true'</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>or</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ curl -H 'Content-Type: application/json' -X POST -d @gettingstarted.json 'http://localhost:8983/solr/test_collection/update?commit=true'</code></pre>
+</div>
</div>
<div class="paragraph">
<p><strong>Example: import <code>javabin</code> files</strong></p>
</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-console hljs" data-lang="console">$ bin/solr export -url http://localhost:8983/solr/gettingstarted -format javabin -fields id,name,manu,cat,features
+$ curl -X POST --header "Content-Type: application/javabin" --data-binary @gettingstarted.javabin 'http://localhost:8983/solr/test_collection/update?commit=true'</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="interacting-with-api"><a class="anchor" href="#interacting-with-api"></a>Interacting with API</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The <code>api</code> command will allow you to send an arbitrary HTTP request to a Solr API endpoint.</p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr api -get <a href="http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10" class="bare">http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10</a></code></p>
+</div>
+<div class="paragraph">
+<p><code>bin/solr api -help</code></p>
+</div>
+<div class="paragraph">
+<p>The <code>bin/solr api</code> command takes the following parameters:</p>
+</div>
+<div class="dlist">
+<dl>
+<dt class="hdlist1"><code>-get <url></code></dt>
+<dd>
+<table class="tableblock frame-none grid-all fit-content">
+<colgroup>
+<col>
+<col>
+</colgroup>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Required</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default: none</p></td>
+</tr>
+</tbody>
+</table>
+<div class="paragraph">
+<p>Send a GET request to a Solr API endpoint.</p>
+</div>
+<div class="paragraph">
+<p><strong>Example</strong>: <code>bin/solr api -get <a href="http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10" class="bare">http://localhost:8983/solr/COLL_NAME/sql?stmt=select+id+from+COLL_NAME+limit+10</a></code></p>
+</div>
+</dd>
+</dl>
+</div>
+<div class="sect2">
+<h3 id="api"><a class="anchor" href="#api"></a>API</h3>
+<div class="paragraph">
+<p>The <code>api</code> command will allow you to send an arbitrary HTTP request to a Solr API endpoint.
+If you have configured basicAuth or TLS with your Solr you may find this easier than using a separate tool like <code>curl</code>.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">$ bin/solr api api -get http://localhost:8983/solr/techproducts/select?q=*:*</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Here is an example of sending a SQL query to the techproducts /sql end point (assumes you started Solr in Cloud mode with the SQL module enabled):</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-bash hljs" data-lang="bash">$ bin/solr api api -get http://localhost:8983/solr/techproducts/sql?stmt=select+id+from+techproducts+limit+10</code></pre>
+</div>
+</div>
<div class="paragraph">
-<p><code>curl -X POST --header "Content-Type: application/javabin" --data-binary @gettingstarted.javabin <a href="http://localhost:8983/solr/gettingstarted/update?commit=true" class="bare">http://localhost:8983/solr/gettingstarted/update?commit=true</a></code></p>
+<p>Results are streamed to the terminal.</p>
</div>
</div>
</div>
Modified: sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html
URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html?rev=1083697&r1=1083696&r2=1083697&view=diff
==============================================================================
--- sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html (original)
+++ sites/solr/guide/solr/latest/deployment-guide/solr-in-docker.html Fri Jul 21 18:07:42 2023
@@ -39,7 +39,7 @@
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Resources</a>
<div class="navbar-dropdown">
- <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
+ <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
<a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a>
<a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a>
<a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a>
@@ -56,25 +56,25 @@
</nav>
</header>
<div class="body">
-<div class="nav-container" data-component="solr" data-version="9_2">
+<div class="nav-container" data-component="solr" data-version="9_3">
<aside class="nav">
<div class="panels">
<!-- Solr Changes - Start -->
<div class="nav-panel-explore" data-panel="explore">
<div class="context">
<span class="title">Solr Reference Guide</span>
- <span class="version">9.2</span>
+ <span class="version">9.3</span>
</div>
<!-- Programmatically creates the component and version list -->
<ul class="components">
<li class="component is-current">
<a class="title" href="../index.html">Solr Reference Guide</a>
<ul class="versions">
- <li class="version">
- <a href="../../9_3/index.html">9.3-beta</a>
- </li>
<li class="version is-current is-latest">
- <a href="../index.html">9.2</a>
+ <a href="../index.html">9.3</a>
+ </li>
+ <li class="version">
+ <a href="../../9_2/index.html">9.2</a>
</li>
<li class="version">
<a href="../../9_1/index.html">9.1</a>
@@ -211,7 +211,7 @@
<a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a>
</li>
<li class="nav-item" data-depth="2">
- <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a>
+ <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a>
@@ -718,6 +718,9 @@
</ul>
</li>
<li class="nav-item" data-depth="2">
+ <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a>
+ </li>
+ <li class="nav-item" data-depth="2">
<a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a>
</li>
<li class="nav-item" data-depth="2">
@@ -1070,17 +1073,17 @@
</ul>
</nav>
<div class="page-versions">
- <button class="version-menu-toggle" title="Show other versions of page">9.2</button>
+ <button class="version-menu-toggle" title="Show other versions of page">9.3</button>
<div class="version-menu">
- <a class="version" href="../../9_3/deployment-guide/solr-in-docker.html">9.3-beta</a>
- <a class="version is-current" href="solr-in-docker.html">9.2</a>
+ <a class="version is-current" href="solr-in-docker.html">9.3</a>
+ <a class="version" href="../../9_2/deployment-guide/solr-in-docker.html">9.2</a>
<a class="version" href="../../9_1/deployment-guide/solr-in-docker.html">9.1</a>
<a class="version" href="../../9_0/deployment-guide/solr-in-docker.html">9.0</a>
</div>
</div>
<!-- Solr Additions - Start -->
<!-- Solr New File -->
-<span class="perma-link-copy" version="9_2">
+<span class="perma-link-copy" version="9_3">
</span><!-- Solr Additions - End -->
<div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-in-docker.adoc">Edit this Page</a></div>
</div>
@@ -1101,6 +1104,37 @@
<p>See the <a href="https://hub.docker.com/_/solr?tab=tags">Docker Hub page</a> for a full list of tags and architectures available.</p>
</div>
<div class="sect2">
+<h3 id="available-images"><a class="anchor" href="#available-images"></a>Available images</h3>
+<div class="paragraph">
+<p>Two docker images are provided for each release, full and slim.
+These correspond to the two binary distributions that are produced for each Solr release.
+The docker images for these distributions can be found at:</p>
+</div>
+<div class="hdlist">
+<table>
+<tr>
+<td class="hdlist1">
+Full distribution
+</td>
+<td class="hdlist2">
+<p><code>solr:<version></code></p>
+</td>
+</tr>
+<tr>
+<td class="hdlist1">
+Slim distribution
+</td>
+<td class="hdlist2">
+<p><code>solr:<version>-slim</code></p>
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Please refer to the <a href="installing-solr.html#available-solr-packages" class="xref page">Available Solr Packages</a> section for more information on each distribution.</p>
+</div>
+</div>
+<div class="sect2">
<h3 id="running-solr-with-host-mounted-directories"><a class="anchor" href="#running-solr-with-host-mounted-directories"></a>Running Solr with host-mounted directories</h3>
<div class="paragraph">
<p>Typically users first want to run a single standalone Solr server in a container, with a single core for data, while storing data in a local directory.
Modified: sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html
URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html?rev=1083697&r1=1083696&r2=1083697&view=diff
==============================================================================
--- sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html (original)
+++ sites/solr/guide/solr/latest/deployment-guide/solr-on-hdfs.html Fri Jul 21 18:07:42 2023
@@ -39,7 +39,7 @@
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Resources</a>
<div class="navbar-dropdown">
- <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
+ <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
<a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a>
<a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a>
<a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a>
@@ -56,25 +56,25 @@
</nav>
</header>
<div class="body">
-<div class="nav-container" data-component="solr" data-version="9_2">
+<div class="nav-container" data-component="solr" data-version="9_3">
<aside class="nav">
<div class="panels">
<!-- Solr Changes - Start -->
<div class="nav-panel-explore" data-panel="explore">
<div class="context">
<span class="title">Solr Reference Guide</span>
- <span class="version">9.2</span>
+ <span class="version">9.3</span>
</div>
<!-- Programmatically creates the component and version list -->
<ul class="components">
<li class="component is-current">
<a class="title" href="../index.html">Solr Reference Guide</a>
<ul class="versions">
- <li class="version">
- <a href="../../9_3/index.html">9.3-beta</a>
- </li>
<li class="version is-current is-latest">
- <a href="../index.html">9.2</a>
+ <a href="../index.html">9.3</a>
+ </li>
+ <li class="version">
+ <a href="../../9_2/index.html">9.2</a>
</li>
<li class="version">
<a href="../../9_1/index.html">9.1</a>
@@ -211,7 +211,7 @@
<a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a>
</li>
<li class="nav-item" data-depth="2">
- <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a>
+ <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a>
@@ -718,6 +718,9 @@
</ul>
</li>
<li class="nav-item" data-depth="2">
+ <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a>
+ </li>
+ <li class="nav-item" data-depth="2">
<a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a>
</li>
<li class="nav-item" data-depth="2">
@@ -1070,17 +1073,17 @@
</ul>
</nav>
<div class="page-versions">
- <button class="version-menu-toggle" title="Show other versions of page">9.2</button>
+ <button class="version-menu-toggle" title="Show other versions of page">9.3</button>
<div class="version-menu">
- <a class="version" href="../../9_3/deployment-guide/solr-on-hdfs.html">9.3-beta</a>
- <a class="version is-current" href="solr-on-hdfs.html">9.2</a>
+ <a class="version is-current" href="solr-on-hdfs.html">9.3</a>
+ <a class="version" href="../../9_2/deployment-guide/solr-on-hdfs.html">9.2</a>
<a class="version" href="../../9_1/deployment-guide/solr-on-hdfs.html">9.1</a>
<a class="version" href="../../9_0/deployment-guide/solr-on-hdfs.html">9.0</a>
</div>
</div>
<!-- Solr Additions - Start -->
<!-- Solr New File -->
-<span class="perma-link-copy" version="9_2">
+<span class="perma-link-copy" version="9_3">
</span><!-- Solr Additions - End -->
<div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solr-on-hdfs.adoc">Edit this Page</a></div>
</div>
Modified: sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html
URL: http://svn.apache.org/viewvc/sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html?rev=1083697&r1=1083696&r2=1083697&view=diff
==============================================================================
--- sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html (original)
+++ sites/solr/guide/solr/latest/deployment-guide/solrcloud-distributed-requests.html Fri Jul 21 18:07:42 2023
@@ -39,7 +39,7 @@
<div class="navbar-item has-dropdown is-hoverable">
<a class="navbar-link" href="#">Resources</a>
<div class="navbar-dropdown">
- <a class="navbar-item" href="https://solr.apache.org/docs/9_2_1/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
+ <a class="navbar-item" href="https://solr.apache.org/docs/9_3_0/index.html" target="_blank" rel="noreferrer nopener">Solr Javadocs</a>
<a class="navbar-item" href="https://solr.apache.org/community.html#version-control" target="_blank" rel="noreferrer nopener">Source Code</a>
<a class="navbar-item" href="https://solr.apache.org/community.html" target="_blank" rel="noreferrer nopener">Community Links</a>
<a class="navbar-item" href="https://github.com/apache/solr/tree/main/dev-docs/ref-guide" target="_blank" rel="noreferrer nopener">Contribute</a>
@@ -56,25 +56,25 @@
</nav>
</header>
<div class="body">
-<div class="nav-container" data-component="solr" data-version="9_2">
+<div class="nav-container" data-component="solr" data-version="9_3">
<aside class="nav">
<div class="panels">
<!-- Solr Changes - Start -->
<div class="nav-panel-explore" data-panel="explore">
<div class="context">
<span class="title">Solr Reference Guide</span>
- <span class="version">9.2</span>
+ <span class="version">9.3</span>
</div>
<!-- Programmatically creates the component and version list -->
<ul class="components">
<li class="component is-current">
<a class="title" href="../index.html">Solr Reference Guide</a>
<ul class="versions">
- <li class="version">
- <a href="../../9_3/index.html">9.3-beta</a>
- </li>
<li class="version is-current is-latest">
- <a href="../index.html">9.2</a>
+ <a href="../index.html">9.3</a>
+ </li>
+ <li class="version">
+ <a href="../../9_2/index.html">9.2</a>
</li>
<li class="version">
<a href="../../9_1/index.html">9.1</a>
@@ -211,7 +211,7 @@
<a class="nav-link" href="../getting-started/tutorial-films.html">Exercise 2: Index Films Data</a>
</li>
<li class="nav-item" data-depth="2">
- <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3 Index Your Own Data</a>
+ <a class="nav-link" href="../getting-started/tutorial-diy.html">Exercise 3: Index Your Own Data</a>
</li>
<li class="nav-item" data-depth="2">
<a class="nav-link" href="../getting-started/tutorial-solrcloud.html">Getting Started with SolrCloud</a>
@@ -718,6 +718,9 @@
</ul>
</li>
<li class="nav-item" data-depth="2">
+ <a class="nav-link" href="../indexing-guide/indexing-with-cbor.html">Indexing with Update CBOR data format</a>
+ </li>
+ <li class="nav-item" data-depth="2">
<a class="nav-link" href="../indexing-guide/indexing-with-tika.html">Indexing with Solr Cell and Apache Tika</a>
</li>
<li class="nav-item" data-depth="2">
@@ -1071,17 +1074,17 @@
</ul>
</nav>
<div class="page-versions">
- <button class="version-menu-toggle" title="Show other versions of page">9.2</button>
+ <button class="version-menu-toggle" title="Show other versions of page">9.3</button>
<div class="version-menu">
- <a class="version" href="../../9_3/deployment-guide/solrcloud-distributed-requests.html">9.3-beta</a>
- <a class="version is-current" href="solrcloud-distributed-requests.html">9.2</a>
+ <a class="version is-current" href="solrcloud-distributed-requests.html">9.3</a>
+ <a class="version" href="../../9_2/deployment-guide/solrcloud-distributed-requests.html">9.2</a>
<a class="version" href="../../9_1/deployment-guide/solrcloud-distributed-requests.html">9.1</a>
<a class="version" href="../../9_0/deployment-guide/solrcloud-distributed-requests.html">9.0</a>
</div>
</div>
<!-- Solr Additions - Start -->
<!-- Solr New File -->
-<span class="perma-link-copy" version="9_2">
+<span class="perma-link-copy" version="9_3">
</span><!-- Solr Additions - End -->
<div class="edit-this-page"><a href="https://github.com/apache/solr/tree/main/solr/solr-ref-guide/modules/deployment-guide/pages/solrcloud-distributed-requests.adoc">Edit this Page</a></div>
</div>
@@ -1109,7 +1112,7 @@
<p>In a SolrCloud cluster each individual node load balances read requests across all the replicas in a collection.
You may still need a load balancer on the 'outside' that talks to the cluster.
Or you need a client which understands how to read and interact with Solr’s metadata in ZooKeeper and only requests the ZooKeeper ensemble’s address to discover which nodes should receive requests.
-Solr provides a smart Java SolrJ client called <a href="https://solr.apache.org/docs/9_2_1/solrj/org/apache/solr/client/solrj/impl/CloudSolrClient.html">CloudSolrClient</a> which is capable of this.</p>
+Solr provides a smart Java SolrJ client called <a href="https://solr.apache.org/docs/9_3_0/solrj/org/apache/solr/client/solrj/impl/CloudSolrClient.html">CloudSolrClient</a> which is capable of this.</p>
</div>
<div class="paragraph">
<p>Even if some nodes in the cluster are offline or unreachable, a Solr node will be able to correctly respond to a search request as long as it can communicate with at least one replica of every shard, or one replica of every <em>relevant</em> shard if the user limited the search via the <code>shards</code> or <code>_route_</code> parameters.