我有使用 DDEV 设置的 TYPO3 开发环境。现在我想将 Solr 服务器添加到它,并使用 Ext:Solr 扩展进行索引和搜索。
如何将 Solr 服务器设置为可从 ddev Web 容器使用?
编辑: 如何为 TYPO3 配置 Solr 服务器的说明已包含在官方 ddev-contrib 存储库中,可在此处找到: https ://github.com/drud/ddev-contrib/tree/master/docker-compose-服务/typo3-solr
原答案:
为了使用 DDEV 为 TYPO3 配置 Solr 服务器,您需要执行以下步骤:
配置 Solr 容器
创建.ddev/docker-compose.solr.yaml
文件:
version: '3.6'
services:
solr:
container_name: ddev-${DDEV_SITENAME}-solr
image: typo3solr/ext-solr:10.0.1
restart: "no"
ports:
- 8983
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.approot: $DDEV_APPROOT
environment:
- VIRTUAL_HOST=$DDEV_HOSTNAME
- HTTP_EXPOSE=8983
volumes:
- "./solr:/opt/solr/server/solr"
# If you want your solr to persist over `ddev stop` and `ddev start` then uncomment the following line
# If you uncomment it and want to flush your data you have to `ddev stop` and then
# `docker volume rm ddev-<projectname>_solrdata` to destroy it.
# - solrdata:/var/solr
web:
links:
- solr:$DDEV_HOSTNAME
volumes:
# solrdata is a persistent Docker volume for this project's solr data
solrdata:
有关配置的更多详细信息,请查看 ddev 文档:https ://ddev.readthedocs.io/en/latest/users/extend/custom-compose-files/
此配置将创建 Solr 容器并使 Solr 管理面板可通过http://<project-name>.ddev.local:8983/solr/
您的主机使用。
将默认 Solr 配置从 Ext:Solr 复制到 ddev
创建文件夹路径.ddev/solr
。然后将 Solr 配置和 cores 配置从复制 typo3conf/ext/solr/Resources/Private/Solr
到 .ddev/solr
.
所以你应该有一个结构.ddev/solr
:
配置 TYPO3 访问 Solr
你可以使用 TypoScript 来做到这一点:
plugin.tx_solr {
solr {
host = solr
port = 8983
path = /solr/core_en/
}
}