Configuring collective.solr

Solr-Connection Configuration

ZCML Configuration (prefered)

The connections settings for Solr can be configured in ZCML and thus in buildout. This makes it easier when copying databases between multiple Zope instances with different Solr servers. Example:

zcml-additional =
    <configure xmlns:solr="http://namespaces.plone.org/solr">
        <solr:connection host="localhost" port="8983" base="/solr/plone"/>
   </configure>

Configuration Using Environment Variables

The connection settings as well as the login and password for basic authentication can be defined using environment variables. This is helpful to maintain Plone instances with Docker and different SolR servers. Example:

environment-vars +=
  COLLECTIVE_SOLR_HOST localhost
  COLLECTIVE_SOLR_PORT 8983
  COLLECTIVE_SOLR_BASE /solr/plone
  COLLECTIVE_SOLR_LOGIN solr_login
  COLLECTIVE_SOLR_PASSWORD solr_password

Configuration priority

There is a priority between configuration methods (ZCML, environment variables and TTW)

  1. ZCML
  2. Environment Variables
  3. TTW Configuration

Since parameters are limited for ZCML and Environement Variables methods, the three methods can be combined as long as you remember the priority above.

Here is a list of parameters and methods

Parameter Example ZCML Environment Variables TTW
Host localhost YES YES YES
Port 8983 YES YES YES
Base /solr/plone YES YES YES
Login login NO YES YES
Password password NO YES YES
Other parameters   NO NO YES

TTW Configuration

TTW Configuration of Solr-Settings