[英]How spring cloud config use local property override remote property
我知道应该设置以下属性,但仍然对应该在哪里设置它们感到困惑。
spring:
cloud:
config:
allowOverride: true
failFast: true
overrideNone: false
spring 云服务器端或客户端或远程 git 存储库上的 application.properties 文件?
我在服务器端的 application.yml 中设置了它们,但不起作用。
我尝试在远程 git 上的 application.yml 中设置,但再次不起作用,希望您能给我一些帮助,谢谢。
我在远程git仓库中设置了以下配置。 这次工作。
spring:
cloud:
config:
allowOverride: true
overrideNone: true
overrideSystemProperties: false
从Spring Cloud文档中的覆盖远程属性的值部分:
由引导上下文添加到应用程序的属性源通常是“远程”(例如,来自Config服务器),并且默认情况下,除了命令行之外,它们不能在本地重写。 如果要允许应用程序使用自己的系统属性或配置文件覆盖远程属性,则远程属性源必须通过设置
spring.cloud.config.allowOverride=true
来授予它权限(它不能用于设置此属性)本地)。一旦设置了该标志,就会有一些更细粒度的设置来控制远程属性相对于系统属性和应用程序本地配置的位置:
spring.cloud.config.overrideNone=true
以覆盖任何本地属性源和spring.cloud.config.overrideSystemProperties=false
如果只有系统属性和环境变量应该覆盖远程设置,而不是本地配置文件。
因此,它必须在远程application.yml
设置(例如远程git存储库)。 如前所述这里 :“应用程序不能自行决定,它可以从远程源覆盖配置”。
'spring boot app'<-- 'config-server'--> 'config-repo'
在config-repo中的 application.properties 中设置以下属性
spring.cloud.config.allowOverride=true
spring.cloud.config.overrideNone=true
spring.cloud.config.overrideSystemProperties=false
如果远程文件是 yml 那么下面的格式
spring:
cloud:
config:
allowOverride: true
overrideNone: true
overrideSystemProperties: false
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.