From 9ca9a9cd70ff582021742b71c5d391d39881bbfd Mon Sep 17 00:00:00 2001
From: buildmaster file:/tmp/config,file:/tmp/config/{label}
disabled by setting spring.cloud.config.server.native.addLabelLocations=false.
Spring Cloud Config Server also supports Vault as a backend.
For more information on Vault see the Vault quickstart guide.
To enable the config server to use a Vault backend you must run your config server +while providing tight access control and recording a detailed audit log.
For more information on Vault see the Vault quickstart guide.
To enable the config server to use a Vault backend you can run your config server
with the vault profile. For example in your config server’s application.properties
you can add spring.profiles.active=vault.
By default the config server will assume your Vault server is running at
http://127.0.0.1:8200. It also will assume that the name of backend
@@ -381,8 +381,22 @@ resources in the default search locations are removed because they are
part of the server.
When using Vault as a backend you can share configuration with
all applications by placing configuration in
secret/application. For example, if you run this Vault command
$ vault write secret/application foo=bar baz=bam
All applications using the config server will have the properties
-foo and baz available to them.
In some scenarios you may wish to pull configuration data from multiple
-environment repositories. To do this just enable
+foo and baz available to them.
Spring Cloud Config Server supports JDBC (relation database) as a
+backend for configuration properties. You can enable this feature by
+adding spring-jdbc to the classpath, and using the "jdbc" profile,
+or by adding a bean of type JdbcEnvironmentRepository. Spring Boot
+will configure a data source if you include the right dependencies on
+the classpath (see the user guide for more details on that).
The database needs to have a table called "PROPERTIES" with columns
+"APPLICATION", "PROFILE", "LABEL" (with the usual Environment
+meaning), plus "KEY" and "VALUE" for the key and value pairs in
+Properties style. All fields are of type String in Java, so you can
+make them VARCHAR of whatever length you need. Property values
+behave in the same way as they would if they came from Spring Boot
+properties files named {application}-{profile}.properties, including
+all the encryption and decryption, which will be applied as
+post-processing steps (i.e. not in the repository implementation
+directly).
In some scenarios you may wish to pull configuration data from multiple
+environment repositories. To do this you can just enable
multiple profiles in your config server’s application properties or YAML file.
If, for example, you want to pull configuration data from a Git repository
as well as a SVN repository you would set the following properties for your
@@ -412,7 +426,7 @@ must implement the EnvironmentRepository interface.
the priority of you custom EnvironmentRepository within the composite
environment you should also implement the Ordered interface and override the
getOrdered method. If you do not implement the Ordered interface then your
-EnvironmentRepository will be given the lowest priority.
The Config Server has an "overrides" feature that allows the operator
+EnvironmentRepository will be given the lowest priority.
The Config Server has an "overrides" feature that allows the operator to provide configuration properties to all applications that cannot be accidentally changed by the application using the normal Spring Boot hooks. To declare overrides just add a map of name-value pairs to diff --git a/multi/multi_spring-cloud-config.html b/multi/multi_spring-cloud-config.html index 53e7f8f7..266ff3f9 100644 --- a/multi/multi_spring-cloud-config.html +++ b/multi/multi_spring-cloud-config.html @@ -1,3 +1,3 @@
-Table of Contents
Table of Contents