MongoDB バックエンド

Spring Cloud Config サーバーは、構成プロパティのバックエンドとして MongoDB をサポートしています。この機能を有効にするには、クラスパスに spring-boot-starter-data-mongodb を追加し、mongodb プロファイルを使用します。

pom.xml
<dependencies>
	<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-data-mongodb</artifactId>
	</dependency>
</dependencies>

アプリケーションの application.properties または application.yml を MongoDB インスタンスを指すように構成します。

spring:
  profiles:
    active: mongodb
  data:
    mongodb:
      database: your-database-name
      port: '27017'
      host: localhost

構成プロパティは、properties コレクション内のドキュメントに保存する必要があります。各ドキュメントは、特定のアプリケーション、プロファイル、ラベルのプロパティのセットを表します。

MongoDB ドキュメントの例:

{
  "application": "myapp",
  "profile": "development",
  "label": "master",
  "properties": {
    "property1": "value1",
    "property2": "value2"
  }
}

spring.cloud.config.server.mongodb.enabled プロパティを false に設定することにより、MongoDbEnvironmentRepository の自動構成を無効にできます。

MongoDB バックエンド構成のデフォルト値は次のとおりです。

  • コレクション名 "properties" (構成プロパティを照会する MongoDB コレクションの名前。)

  • デフォルトのラベル "master" (何も指定されていない場合に使用するデフォルトのラベル。)

アプリケーションの構成で spring.cloud.config.server.mongodb.collection と spring.cloud.config.server.mongodb.defaultLabel を設定することで、これらのデフォルトを変更できます。