服務器爲外部配置(名稱值對或等效的YAML內容)提供了基於資源的HTTP。服務器能夠使用@EnableConfigServer
註釋輕鬆嵌入到Spring Boot應用程序中。因此這個應用程序是一個配置服務器:html
ConfigServer.javajava
@SpringBootApplication @EnableConfigServer public class ConfigServer { public static void main(String[] args) { SpringApplication.run(ConfigServer.class, args); } }
像全部的默認端口8080上運行的全部Spring Boot應用程序同樣,但您能夠經過各類方式將其切換到常規端口8888。最簡單的也是設置一個默認配置庫,它是經過啓動它的spring.config.name=configserver
(在Config Server jar中有一個configserver.yml
)。另外一個是使用你本身的application.properties
,例如git
application.propertiesspring
server.port: 8888 spring.cloud.config.server.git.uri: file://${user.home}/config-repo
其中${user.home}/config-repo
是包含YAML和屬性文件的git倉庫。服務器
在Windows中,若是文件URL爲絕對驅動器前綴,例如file:///${user.home}/config-repo
,則須要額外的「/」。app
如下是上面示例中建立git倉庫的方法:測試
$ cd $HOME $ mkdir config-repo $ cd config-repo $ git init . $ echo info.foo: bar > application.properties $ git add -A . $ git commit -m "Add application.properties"
警告 使用本地文件系統進行git存儲庫僅用於測試。使用服務器在生產環境中託管配置庫。code
若是您只保留文本文件,則配置庫的初始克隆將會快速有效。若是您開始存儲二進制文件,尤爲是較大的文件,則可能會遇到服務器中第一個配置請求和/或內存不足錯誤的延遲。源碼來源server