嵌入配置服务器
Config 服务器最适合作为独立应用程序运行。但是,如果需要,您可以将其嵌入到另一个应用程序中。为此,请使用@EnableConfigServer
注解。在这种情况下,一个名为spring.cloud.config.server.bootstrap
的可选属性可能很有用。它是一个标志,指示服务器是否应该从其自己的远程存储库中配置自身。默认情况下,此标志处于关闭状态,因为它可能会延迟启动。但是,当嵌入到另一个应用程序中时,以与任何其他应用程序相同的方式进行初始化是有意义的。当将spring.cloud.config.server.bootstrap
设置为true
时,您还必须使用复合环境存储库配置。例如
spring:
application:
name: configserver
profiles:
active: composite
cloud:
config:
server:
composite:
- type: native
search-locations: ${HOME}/Desktop/config
bootstrap: true
如果使用 bootstrap 标志,则 config 服务器需要在其bootstrap.yml 中配置其名称和存储库 URI。 |
要更改服务器端点的所在位置,您可以(可选地)设置spring.cloud.config.server.prefix
(例如,/config
),以在某个前缀下提供资源。前缀应以/
开头,但不应以/
结尾。它应用于 Config 服务器中的@RequestMappings
(即,在 Spring Boot server.servletPath
和server.contextPath
前缀之下)。
如果您希望直接从后端存储库(而不是从 config 服务器)读取应用程序的配置,则基本上需要一个没有端点的嵌入式 config 服务器。您可以通过不使用@EnableConfigServer
注解(设置spring.cloud.config.server.bootstrap=true
)来完全关闭端点。