構成サーバーの埋め込み
構成サーバーは、スタンドアロンアプリケーションとして最適に実行されます。ただし、必要に応じて、別のアプリケーションに埋め込むことができます。これを行うには、@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
ブートストラップフラグを使用する場合、構成サーバーの名前とリポジトリ URI を bootstrap.yml で構成する必要があります。 |
サーバーエンドポイントの場所を変更するには、(オプションで) spring.cloud.config.server.prefix
(たとえば、/config
)を設定して、プレフィックスでリソースを提供できます。プレフィックスは /
で開始する必要がありますが、終了することはできません。これは、構成サーバーの @RequestMappings
に適用されます(つまり、Spring Boot server.servletPath
および server.contextPath
プレフィックスの下)。
アプリケーションの構成を(構成サーバーからではなく)バックエンドリポジトリから直接読み取りたい場合は、基本的に、エンドポイントのない組み込み構成サーバーが必要です。@EnableConfigServer
アノテーションを使用しないことでエンドポイントを完全にオフにすることができます(spring.cloud.config.server.bootstrap=true
を設定)。