參考資料:
http://cloud.spring.io/spring-cloud-static/Camden.SR7/#_spring_cloud_config_server
伺服器為外部配置(name-value對或等效的YAML內容)提供了一個HTTP,基於資源的API。伺服器使用@EnableConfigServer
註解輕鬆的嵌入到Spring Boot應用程式中。所以這個程式是一個配置伺服器:
ConfigServer.java
@SpringBootApplication
@EnableConfigServer
public class ConfigServer {
public static void main(String[] args) {
SpringApplication.run(ConfigServer.class, args);
}
}
像所有的Spring Boot應用程式一樣,預設情況下,它將在埠8080上執行,但你可以通過各種的方式將其切換到常規埠8888.最簡單的也是設定一個預設的配置庫,通過spring.config.name=configserver
(在Config Server jar中有一個configserver.yml
)來啟動它.另一個是使用你自己的application.properties,例如:
application.properties
server.port: 8888
spring.cloud.config.server.git.uri: file://${user.home}/config-repo
其中${user.home}/config-repo
是一個包含YAML和屬性檔案的git倉庫
NOTE:在windows中,如果URL是帶有驅動符字首的絕對路徑,你需要在URL中新增一個額外"/",例如:file:///${user.home}/config-repo
TIP: 以下是上面例子中建立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"
WARNING: 使用本地檔案系統進行git儲存庫僅用於測試。使用伺服器在生產環境中託管配置庫。
WARNING: 如果您只保留文字檔案,則配置庫的初始克隆將會快速有效。如果您開始儲存二進位制檔案,尤其是較大的檔案,則可能會遇到伺服器中第一個配置請求和/或記憶體不足錯誤的延遲.