Я новичок в Linux, Java и конфигурации Apache Commons, и у меня возникают проблемы с поиском файла свойств между средами.
Я создаю Spring API с Maven в Windows и имею файл .properties
, из которого хочу извлечь настройки. Я также пытаюсь опубликовать этот API в контейнере Docker на базе Linux и не понимаю стратегии расположения файлов.
Все работает в Windows с файлом свойств в C:\users\myusers\app.properties
. В контейнере Linux у меня есть и jar, и файл свойств здесь /usr/bin/myapp
, но я не уверен, как использовать любую из стратегий для доступа к обоим, так как это не работает в Docker/Linux.
Есть ли наилучшая практика, где я должен хранить файл свойств в контейнере?
CombinedLocationStrategy strategy = new CombinedLocationStrategy(
Arrays.asList(new HomeDirectoryLocationStrategy(), new FileSystemLocationStrategy()));
Parameters params = new Parameters();
FileBasedConfigurationBuilder<FileBasedConfiguration> builder =
new FileBasedConfigurationBuilder<FileBasedConfiguration>(PropertiesConfiguration.class)
.configure(params.fileBased()
.setLocationStrategy(strategy)
.setFileName("app.properties"));
Configuration propConfig = builder.getConfiguration();
rootDirectory = propConfig.getString("rootfolder");