Потеря core.properties после перезапуска контейнера Solr Docker

Я запускаю экземпляр Solr из образа Docker. У меня 2 ядра.

После того, как я перезапустил контейнер, core.properties одного из ядер был удален, и ядро ​​исчезло из пользовательского интерфейса администратора. После того, как я создал и добавил этот файл вручную, все стало так же, как и раньше. Затем я снова попытался перезапустить контейнер, и файл 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

После первой перезагрузки core.properties из main_core удалился. Я восстановил его вручную и еще раз перезагрузил контейнер. Затем core.properties из swap_core был удален.

Помимо этого, я получаю

org.apache.solr.common.SolrException: значение параметра «leaderUrl» не разрешено: URL-адрес не является ни активным узлом кластера, ни в настроен 'allowUrls'

ошибка.

Я не уверен, что код Python сильно поможет, тем более, что с Solr работает около 10-12 различных функций и поскольку до перезапуска Docker-контейнера все было в порядке. Я бы просто добавил, что использую библиотеку Pysolr Python.

import pysolr

solr = pysolr.Solr("http://localhost:8983/solr/main_core")

Предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.

emdneto 04.03.2024 02:04

@EmidioNeto добавил дополнительную информацию. Я подозреваю, что это проблема не кода, а проблемы Докера. Там много кода Python, и до перезапуска контейнера все работало как положено.

sauber 04.03.2024 09:15
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Развертывание модели машинного обучения с помощью Flask - Angular в Kubernetes
Kubernetes - это портативная, расширяемая платформа с открытым исходным кодом для управления контейнерными рабочими нагрузками и сервисами, которая...
Как создать PHP Image с нуля
Как создать PHP Image с нуля
Сегодня мы создадим PHP Image from Scratch для того, чтобы легко развернуть базовые PHP-приложения. Пожалуйста, имейте в виду, что это разработка для...
0
2
88
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

РЕШЕНО: Оказалось, что мне пришлось изменить solr.xml

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

по тому пути:

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

Даже переиндексация начала работать корректно.

Другие вопросы по теме