參考資料:
http://cloud.spring.io/spring-cloud-static/Camden.SR7/
檔案系統後端:
Config Server中有一個不適用Git的"native"配置檔案,只是從本地類路徑或檔案系統中載入配置(你可以使用"spring.cloud.config.server.native.searchLocations"指向任何的靜態URL).
想要使用native profile,只需要使用“spring.profiles.active=native”啟動Config Server即可。
NOTE:
記得檔案資源使用 file: 字首(通常的類路徑預設是沒有字首的)。
就像任何的Spring Boot配置一樣,可以嵌入${}風格的環境佔位符,但是請記住,Windows中絕對路徑需要額外的新增"/",例如:file:///${user.home}/config-repo。
WARNING:
searchLocations
的預設值與本地的Spring Boot應用程式(所以[classpath:/, classpath:/config, file:./, file:./config]
)相同。這不會將 application.properties
從伺服器暴露給所有客戶端,因為在傳送給客戶端前,伺服器中存在的任何的屬性源將被刪除。
TIP:
檔案系統後端非常適合快速入門和測試。要在成產中使用它,需要保證檔案系統是可靠的,並且在Config Server的所有例項中共享。
搜尋位置可以包含{application}
、{profile}
和{label}
佔位符。通過這種方式可以分割路徑中的目錄,並選擇一個對你有意義的策略(例如,每個application的子目錄,每個profile的子目錄)。
如果不在搜尋位置是用佔位符,該儲存庫也會將HTTP資源的{label}
追加到搜尋路徑的字尾上,因此屬性檔案將從每個搜尋位置和與標籤名相同的子目錄中載入(被標記的屬性在Spring環境中有限)。因此沒有佔位符的預設行為與末尾新增了/{label}/
的搜尋位置相同。例如:file:/tmp/config
與file:/tmp/config,file:/tmp/config/{label}
相同。這個行為可以通過設定spring.cloud.config.server.native.addLabelLocations=false
來禁用。