Я настраиваю среду, которая может содержать несколько контейнеров докеров.Каждый контейнер содержит одно и то же приложение SpringBoot.Во время выполнения приложения SpringBoot .ini-файл необходим для работы с разными вещами.Кроме того, .ini-файл может обновляться извне контейнеров.Это обновление или новый INI-файл следует распространить среди всех других контейнеров, чтобы оно было доступно в других приложениях SpringBoot в конце.Распространение файла не является проблемой на данный момент, но как сохранить файл, потому что путь к классу не может быть использован.
Я использую hazelcast, чтобы использовать его функцию кластера.С его помощью я могу распространять новый файл среди всех остальных членов кластера.Сначала я сохранил INI-файл в пути к классам.Но если файл .ini изменяется, нет смысла помещать его в путь к классам, потому что вы не можете писать в jar-файле.Кроме того, если контейнер выходит из строя, память окаменелости теряется, поскольку у него есть только база данных в памяти.
Я ожидаю, что это процесс, в котором я могу легко заменить INI-файл.Например, контейнер уже знает файл (все более новые версии .ini-файла будут иметь одинаковые имена) во время сборки или что-то в этом роде.Если контейнер не работает, он может снова найти файл самостоятельно.И, как я уже упоминал, мне нужно изменить .ini-файл во время выполнения.Затем контейнер, или, если быть более точным, приложение SpringBoot должно автоматически распознавать это изменение.По моему мнению, изменение файла может быть выполнено с помощью вызова REST, который хранит файл в любом месте контейнера или в месте, где ему разрешено писать, потому что classpath не работает.