Kubernetes PropertySource 实现

配置 Spring Boot 应用程序最常见的方法是创建一个 application.propertiesapplication.yaml 或一个 application-profile.propertiesapplication-profile.yaml 文件,其中包含键值对,为您的应用程序或 Spring Boot 启动器提供自定义值。您可以通过指定系统属性或环境变量来覆盖这些属性。

要启用此功能,您需要将 spring.config.import 应用程序配置属性设置为 kubernetes:(使用 yaml 时,使用引号进行转义,例如 "kubernetes:")。 目前,您无法使用 spring.config.import 指定要加载的 ConfigMap 或 Secret,默认情况下,Spring Cloud Kubernetes 将根据 spring.application.name 属性加载 ConfigMap 和/或 Secret。 如果未设置 spring.application.name,它将加载名称为 application 的 ConfigMap 和/或 Secret。

如果您希望在启动阶段加载 Kubernetes PropertySource,就像 3.0.x 版本之前的工作方式一样,您可以将 spring-cloud-starter-bootstrap 添加到应用程序的类路径,或者将 spring.cloud.bootstrap.enabled=true 设置为环境变量。

不支持在启动期间加载属性 (使用 spring-cloud-starter-bootstrapspring.cloud.bootstrap.enabled=true 并使用 spring.config.import 加载属性。您必须使用其中一种方法。