如何使用DDEV为TYPO3设置Solr服务器?

Tym*_*ski 1 solr typo3 ddev

我使用DDEV设置了TYPO3开发环境.现在我想向它添加Solr服务器,并使用Ext:Solr扩展进行索引和搜索.

如何设置Solde服务器从ddev Web容器中可用?

Tym*_*ski 6

要使用DDEV为TYPO3配置Solr服务器,您需要执行以下步骤:

  1. 配置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
    
    Run Code Online (Sandbox Code Playgroud)

    有关配置的更多详细信息,请查看ddev文档:https://ddev.readthedocs.io/en/latest/users/extend/custom-compose-files/

    此配置将创建Solr容器,并通过http://<project-name>.ddev.local:8983/solr/主机使Solr管理面板可用.

  2. 将默认Solr配置从Ext:Solr复制到ddev

    创建文件夹路径.ddev/solr.然后将Solr配置和核心配置从中复制 typo3conf/ext/solr/Resources/Private/Solr.ddev/solr.

    所以你应该有一个结构.ddev/solr:

    • /solr.xml
    • /核心/
    • / configsets /
  3. 允许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"
    
    Run Code Online (Sandbox Code Playgroud)
  4. 配置TYPO3以访问Solr

    你可以使用TypoScript来做到这一点:

    plugin.tx_solr {
     solr {
       host = solr
       port = 8983
       path = /solr/core_en/
     }
    }
    
    Run Code Online (Sandbox Code Playgroud)

  • 请编辑docker-compose yaml版本3.6谢谢! (2认同)