Apache Solr is the blazing-fast, open source, multi-modal search platform built on the full-text, vector, and geospatial search capabilities of Apache Lucene™.
This add-on integrates Solr standalone (no cloud) into your DDEV project and creates Solr cores according to the configuration defined in .ddev/typo3-solr/config.yaml.
This add-on is meant to be a simple integration for DDEV, as it does not work with Solr Cloud and only for Solr standalone. Most web projects use Solr in standalone-mode so this add-on simulates this behaviour for local environments.
ddev add-on get ddev/ddev-typo3-solr
ddev restartAfter installation, make sure to commit the .ddev directory to version control.
| Command | Description |
|---|---|
ddev solrctl --help |
Create and destroy solr cores and configsets |
ddev solr |
Run Solr CLI inside the Solr container |
ddev launch :8984 |
Open Solr Admin in your browser (https://<project>.ddev.site:8984) |
ddev describe |
View service status and used ports for Solr |
ddev logs -s typo3-solr |
Check Solr logs |
Configuration example for TYPO3 in .ddev/typo3-solr/config.yaml:
config: 'vendor/apache-solr-for-typo3/solr/Resources/Private/Solr/solr.xml'
typo3lib: "vendor/apache-solr-for-typo3/solr/Resources/Private/Solr/typo3lib"
configsets:
- name: "ext_solr_12_0_0"
path: "vendor/apache-solr-for-typo3/solr/Resources/Private/Solr/configsets/ext_solr_12_0_0"
cores:
- name: "core_en"
schema: "english/schema.xml"
- name: "core_de"
schema: "german/schema.xml"ddev solrctl applyTo ensure the cores are created automatically on boot, add the following hook to your .ddev/config.yaml:
hooks:
post-start:
- exec-host: ddev solrctl applyTo connect to the solr service you have to configure the following lines in your site configuration:
solr_enabled_read: true
solr_host_read: <your-site>.ddev.site
solr_path_read: /
solr_port_read: '8984'
solr_scheme_read: httpsddev solrctl wipeNote
After running wipe, it may take a few seconds until files are synced which may
cause issues when running apply straight after wipe.
ddev solrThis addon defaults to installing a preferred version of the docker Solr image, but can be configured to use a different version via environment variable (SOLR_BASE_IMAGE).
# Change image version as appropriate.
ddev dotenv set .ddev/.env.solr --solr-base-image="solr:9.8"
ddev add-on get ddev/ddev-typo3-solr
# remove old solr volume (if this is downgrade)
ddev stop
docker volume rm ddev-$(ddev status -j | docker run -i --rm ddev/ddev-utilities jq -r '.raw.name')_typo3-solr
# rebuild solr image (required step)
ddev debug rebuild -s typo3-solr
ddev restart
# confirm the new Solr version
ddev solr versionMake sure to commit the .ddev/.env.solr file to version control.
All customization options (use with caution):
| Variable | Flag | Default |
|---|---|---|
SOLR_BASE_IMAGE |
--solr-base-image |
solr:9.8 |
Maintained by @b13