Solr Docker 容器重启后 core.properties 丢失

问题描述 投票:0回答:1

我从 Docker 映像运行 Solr 实例。我有2个核心。

重新启动容器后,其中一个核心的 core.properties 被删除,并且该核心从管理 UI 中消失。 当我手动创建并添加这个文件后,一切都变得和以前一样了。 然后我尝试再次重新启动容器,并且 core.properties 再次被删除,但这次是从另一个核心删除的。

这可能是什么原因?

编辑:

有 2 个核心:main_core 和 swap_core。 我用它们做了很多操作,例如:添加默认架构、检查架构、添加自定义字段、添加数据等。 我也尝试实施重新索引但没有成功。 但一切都按我的预期运行,直到我重新加载 Docker 容器。 容器的结构如下所示:

- solr
    - Files
        - var
            - solr
                - data
                    - main_core
                        - conf
                        - data
                        core.properties
                    - swap_core
                        - conf
                        - data
                        core.properties

第一次重新加载后,main_core 中的 core.properties 被删除。 我手动恢复它并再次重新加载容器。然后从 swap_core 中删除 core.properties 。

除此之外,我得到了

org.apache.solr.common.SolrException:“leaderUrl”参数值 不允许:URL 既不是集群的活动节点,也不在 配置“allowUrls”

错误。

我不确定 Python 代码会有多大帮助,特别是因为大约有 10-12 个不同的函数可以与 Solr 一起使用,而且在 Docker 容器重新启动之前一切都正常。 我只想补充一点,我使用 Pysolr Python 库。

import pysolr

solr = pysolr.Solr("http://localhost:8983/solr/main_core")
docker solr
1个回答
0
投票

已解决: 原来我得修改solr.xml

<str name="allowUrls">${solr.allowUrls:}</str>

这样:

<str name="allowUrls">${solr.allowUrls:localhost:8983/solr}</str>

甚至重新索引也开始正常工作。

© www.soinside.com 2019 - 2024. All rights reserved.