1. 程式人生 > >jhipster框架學習(四)

jhipster框架學習(四)

(一)使用git倉庫的配置檔案啟動JHipster專案

今天我來演示一下如何使用遠端的配置檔案啟動專案,首先我們在registry註冊中心裡指定spring.profiles.active: dev,git。其次我們的git倉庫裡面也要準備好相應的配置檔案,我的配置檔案的git連結https://git.oschina.net/liupengf/profiles。在這個倉庫中我把啟動檔案都放在了config資料夾中。


其中以application開頭的是jhipster-registry的配置檔案,gateway-dev則是閘道器gateway的啟動檔案,user-dev是user微服務的啟動檔案,分支名稱是master。這裡有個細節需要注意一下,gateway和user服務在這裡面只有一個配置檔案,所以我們把本地微服務的配置檔案放到倉庫的同時 ,還需要把application.yml中關於eureka的配置也放到gateway-dev.yml和user-dev.yml中去。具體配置可以看我倉庫裡面的閘道器和user微服務的配置。如果沒有將application.yml中的eureka配置放進去,啟動的時候就無法註冊到registry中去。當我們啟動成功之後,就會涉及到這樣的問題:我們將敏感的資訊到放到了git倉庫裡面,這樣極其不安全。接下來就來說一下對配置檔案加解密的方法,so easy。

(二)加解密配置檔案中的資訊

首先,config server的加解密功能依賴Java Cryptography Extension(JCE)。下載JCE並解壓,按照其中的README.txt的說明安裝。其實就是將JDK/jrelib/security目錄中的兩個jar檔案替換為壓縮包中的jar檔案。

其次,我們要確保registry專案中的bootstrap.yml檔案中的encrypt: XXX 沒有被註釋。然後我們就會在註冊中心的頁面中點選configuration---》encryption,輸入要加密的內容並點選encrypt進行加密。接著將得到的加密碼替換到配置檔案中即可。這樣就實現了對配置檔案加密的功能。由於config server有自解密功能,因此不用擔心當資料庫密碼被加密了之後而無法正常連線資料庫。

注意:使用命令列啟動Jhipster-registry無法完成加解密功能,並且會提示錯誤:

當我們在開發工具中(eclipse,sts)啟動registry專案則可以正常加解密:


因此,大家在這裡需要留意一下,估計命令列啟動和開發工具啟動過程中還是有些地方不一樣,具體什麼原因我也還沒搞清楚。好了,今天就先說到這裡吧,後面會不定期的更新。