繁体   English   中英

Spring Boot 导入额外的无扩展属性

[英]Spring Boot import additional extensionless properties

我正在使用 Kubernetes 运行我的 Spring Boot 应用程序。 该架构的一部分涉及将机密安装为/opt/config下的文件卷。

$ ls -l
SECRET_1
SECRET_2
SECRET_3

每个文件都包含一个类似语法的.properties key=value

我一直在尝试让 Spring Boot 根据文档spring.config.import=file:/etc/config/myconfig[.yaml]加载这些

但是我不能java -Dspring.config.location=file:./opt/application.properties -Dspring.config.additional-location=file:./opt/config/*[.properties] -jar target/test.war --debug --server.port=8080工作,我的完整命令是: java -Dspring.config.location=file:./opt/application.properties -Dspring.config.additional-location=file:./opt/config/*[.properties] -jar target/test.war --debug --server.port=8080

./opt/application.properties文件已正确加载。

我还尝试重命名所有文件以包含.properties

$ ls -l
SECRET_1.properties
SECRET_2.properties
SECRET_3.properties

并通过java -Dspring.config.location=file:./opt/application.properties -Dspring.config.import=file:./opt/config/*/ -jar target/test.war --debug --server.port=8080加载它java -Dspring.config.location=file:./opt/application.properties -Dspring.config.import=file:./opt/config/*/ -jar target/test.war --debug --server.port=8080 ,但是这也没有导入./opt/config下的任何属性。

我已经通读了几十次文档,这应该有效,但事实并非如此。 我错过了一些明显的东西吗? 为什么不加载./opt/config下的任何文件?

我认为问题在于您指定的位置是 spring 查找 application.properties、application.yml 和配置文件变体(application-prod.properties 等)的位置。 我认为您最好以编程方式将所有文件加载到配置位置, 可能会提供一些想法。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM