此版本仍在开发中,尚未被视为稳定版本。对于最新的稳定版本,请使用 Spring Cloud Config 4.1.4spring-doc.cn

环境存储库

您应该将 Config Server 的配置数据存储在哪里? 控制此行为的策略是 , serving 对象。 这是 Spring 中域的浅层副本(包括作为主要功能)。 资源由三个变量参数化:EnvironmentRepositoryEnvironmentEnvironmentEnvironmentpropertySourcesEnvironmentspring-doc.cn

  • {application},该 Map 到客户端。spring.application.namespring-doc.cn

  • {profile},该列表映射到客户端(逗号分隔列表)。spring.profiles.activespring-doc.cn

  • {label},这是一个服务器端功能,用于标记一组“版本化”的配置文件。spring-doc.cn

存储库实现通常表现得像 Spring Boot 应用程序,从 等于 parameter 和 等于 parameter 加载配置文件。 配置文件的优先规则也与常规 Spring Boot 应用程序中的优先级规则相同:活动配置文件优先于默认值,如果有多个配置文件,则最后一个配置文件获胜(类似于向 a 添加条目)。spring.config.name{application}spring.profiles.active{profiles}Mapspring-doc.cn

以下示例客户端应用程序具有此引导程序配置:spring-doc.cn

spring:
  application:
    name: foo
  profiles:
    active: dev,mysql

(与 Spring Boot 应用程序一样,这些属性也可以通过环境变量或命令行参数设置)。spring-doc.cn

如果存储库是基于文件的,则服务器将创建 from (在所有客户端之间共享) 和 (具有优先权)。 如果 YAML 文件中包含指向 Spring 配置文件的文档,则这些文档将以更高的优先级应用(按列出的配置文件的顺序)。 如果存在特定于配置文件的 YAML(或属性)文件,则这些文件的优先级也高于默认值。 较高的优先级将转换为 . (这些相同的规则适用于独立的 Spring Boot 应用程序。Environmentapplication.ymlfoo.ymlfoo.ymlPropertySourceEnvironmentspring-doc.cn

您可以设置为 ,以便在找不到应用程序时 Server 返回 HTTP 404 状态。默认情况下,此标志设置为 .spring.cloud.config.server.accept-emptyfalsetruespring-doc.cn

不能将属性放置在远程 .这些属性用作应用程序初始化的一部分。spring.main.*EnvironmentRepository