嵌入配置伺服器

Config Server 最好作為獨立的應用程式執行。但是,如有必要,您可以將其嵌入到另一個應用程式中。為此,請使用 @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 標誌,則需要在 bootstrap.yml 中配置 config server 的名稱和倉庫 URI。

要更改伺服器端點的位置,您可以(可選)設定 spring.cloud.config.server.prefix(例如,/config),以在字首下提供資源。字首應以 / 開頭,但不以 / 結尾。它應用於 Config Server 中的 @RequestMappings(即,在 Spring Boot server.servletPathserver.contextPath 字首下)。

如果您想直接從後端倉庫讀取應用程式的配置(而不是從 config server 讀取),那麼您基本上需要一個沒有端點的嵌入式 config server。您可以透過不使用 @EnableConfigServer 註解(設定 spring.cloud.config.server.bootstrap=true)來完全關閉端點。