Solr

Solr is highly reliable, scalable and fault tolerant, providing distributed indexing, replication and load-balanced querying, automated failover and recovery, centralized configuration and more. Solr powers the search and navigation features of many of the world's largest internet sites. You can easily add it to your Lando app by adding an entry to the services key in your app's .lando.yml.

Supported versions

Using patch versions

Because we use our own custom image for php specifying a patch version is not currently supported. If you need to use a patch version you might be able to use our advanced service config.

Example

# solr server example
name: solr

#
# You need to run `lando npm install` before you run `lando start` for this
# example to work
#

# Give me http://solr.lndo.site and http://admin.solr.lndo.site
proxy:
  appserver:
    - solr.lndo.site

  # Lets get a nice lndo url for the solr web interface
  index:
    - admin.solr.lndo.site:8983

# Spin up services to run a basic node server with solr backend
services:

  # Create a node server
  appserver:
    type: node:6.10
    command: npm start
    globals:
      gulp-cli: "latest"

  # Spin up a solr container called "index"
  # NOTE: "index" is arbitrary, you could just as well call this "tswift" or "covfefe"
  index:

    # Use solr version 5.5
    type: solr:5.5

    # Optionally allow access to the database at localhost:9999
    # You will need to make sure port 9999 is open on your machine
    #
    # You can also set `portforward: true` to have Lando dynamically assign
    # a port. Unlike specifying an actual port setting this to true will give you
    # a different port every time you restart your app
    portforward: 9999

    # Optionally declare the name of the solr core.
    # This setting is only applicable for versions 5.5 and above
    core: freedom

    # Optionally use custom solr config files eg (schema.xml and solrconfig.xml)
    # This is helpful if frameworks require custom config eg Drupal.
    # This is relative to the app root (which may be different from your webroot).
    # This should be the directory containing the schema.xml and solrconfig.xml files, not the path to a certain file.
    #config:
    #  conf: solrconf

# Add some nice command routing
tooling:
  npm:
    service: appserver_cli
  gulp:
    service: appserver
  node:
    service: appserver_cli

You will need to rebuild your app with lando rebuild to apply the changes to this file. You can check out the full code for this example over here.

Using Earlier Solr Version

Solr versions 3.6 and 4.10 are designed primarily for use with Drupal. If you plan to use these versions with your application make sure you share in your custom solr config.

Getting information

You can get connection and credential information about your solr instance by running lando info from inside your app.

# Navigate to the app
cd /path/to/app

# Get info (app needs to be running to get this)
lando info

{
  "appserver": {
    "type": "node",
    "version": "6.10",
    "urls": [
      "http://localhost:32797",
      "http://solr.lndo.site"
    ]
  },
  "node": {
    "type": "node",
    "version": "6.10"
  },
  "index": {
    "type": "solr",
    "version": "5.5",
    "internal_connection": {
      "core": "freedom",
      "host": "index",
      "port": 8983
    },
    "external_connection": {
      "core": "freedom",
      "host": "localhost",
      "port": 9999
    }
  }
}

results matching ""

    No results matching ""