我已经使用DDEV设置了TYPO3开发环境。 现在,我想向其中添加Solr服务器,并使用Ext:Solr扩展进行索引和搜索。
如何将Solr服务器设置为可从ddev Web容器使用?
答案 0 :(得分:6)
为了使用DDEV为TYPO3配置Solr服务器,您需要执行以下步骤:
配置Solr容器
创建.ddev/docker-compose.solr.yaml
文件:
version: '3.6'
services:
solr:
image: typo3solr/ext-solr:8.0.3
restart: always
ports:
- 8983
labels:
com.ddev.site-name: ${DDEV_SITENAME}
com.ddev.approot: $DDEV_APPROOT
com.ddev.app-url: $DDEV_URL
environment:
- VIRTUAL_HOST=$DDEV_HOSTNAME
- HTTP_EXPOSE=8983
volumes:
- "./solr:/opt/solr/server/solr"
- "$HOME/.ddev/${DDEV_SITENAME}/solr/data:/opt/solr/server/solr/data"
web:
links:
- solr:$DDEV_HOSTNAME
有关配置的更多详细信息,请参阅ddev文档:https://ddev.readthedocs.io/en/latest/users/extend/custom-compose-files/
此配置将创建Solr容器并通过您的主机上的http://<project-name>.ddev.local:8983/solr/
使Solr管理面板可用。
将默认的Solr配置从Ext:Solr复制到ddev
创建文件夹路径.ddev/solr
。然后复制
从typo3conf/ext/solr/Resources/Private/Solr
到.ddev/solr
的Solr配置和核心配置。
因此,您应该在.ddev/solr
下有一个结构:
允许Solr访问您的Web容器以建立索引。
以下配置使本地域可用于从docker Web容器内进行爬网,请参见问题:https://github.com/drud/ddev/issues/842
创建.ddev/docker-compose.hosts.yaml
文件:
version: '3'
services:
web:
extra_hosts:
- "${DDEV_SITENAME}.ddev.local:127.0.0.1"
配置TYPO3来访问Solr
您可以使用TypoScript做到这一点:
plugin.tx_solr {
solr {
host = solr
port = 8983
path = /solr/core_en/
}
}