У меня есть приложение Spring Boot, для которого я экспортировал конфигурацию с помощью Spring Cloud Config, чтобы я мог изменять и обновлять его свойства на лету.
Вот мой bootstrap.yml:
spring:
application:
name: ${appName:tasky}
profiles:
include:
- native
cloud:
config:
failFast: true
server:
bootstrap: true
prefix: /config
native:
search-locations: classpath:config/{profile}
Обновление, а затем обновление свойства (например, app.api-key
) в моем локальном проекте работает отлично:
curl -X POST http://localhost:9190/management/refresh
["app.api-key"]
Я докертизировал свое приложение и попытался добиться того же результата из своего контейнера, поэтому я попробовал следующее:
sed -i -e 's/oldvalue/newvalue/g' tasky-prod.properties
Это корректно меняет мой файл, но когда я пытаюсь обновить значения в моем приложении (изв контейнере) мой контекст весенней загрузки перезапускается, но из привода ничего не получается, и новое приложение также не используется моим приложением:
curl -X POST http://localhost:9999/management/refresh
[]
Что я сделал не так?