摘要:是什么官方是這樣描述的翻譯之后為提供了命令行功能。您還可以輕松地執(zhí)行加密和解密等操作,以支持具有機(jī)密配置值的配置客戶機(jī)??捎糜趶拿钚羞\(yùn)行,等常用服務(wù)。列出您可以執(zhí)行的可用服務(wù),并僅啟動(dòng)一組默認(rèn)服務(wù)。
導(dǎo)讀
在日常開發(fā)與測試中有一些Spring Cloud 的相關(guān)的組件如 eureka、configserver、zipkin、hystrixdashboard等相對來說不容易發(fā)生變動(dòng),這里就介紹一種Spring 官方為我們提供的開箱即用的 Spring Boot Cloud CLI 只需要一條命令就可以啟動(dòng)這些相關(guān)的組件服務(wù)。
Spring Boot Cloud CLI 是什么?Spring Boot Cloud CLI 官方是這樣描述的:
Spring Boot CLI provides Spring Boot command line features for Spring Cloud. You can write Groovy scripts to run Spring Cloud component applications (e.g. @EnableEurekaServer). You can also easily do things like encryption and decryption to support Spring Cloud Config clients with secret configuration values. With the Launcher CLI you can launch services like Eureka, Zipkin, Config Server conveniently all at once from the command line (very useful at development time).
翻譯之后:
Springbootcli為SpringCloud提供了Springboot命令行功能。您可以編寫groovy腳本來運(yùn)行Spring Cloud組件應(yīng)用程序(例如@enableurekaserver)。您還可以輕松地執(zhí)行加密和解密等操作,以支持具有機(jī)密配置值的SpringCloud配置客戶機(jī)。使用啟動(dòng)器cli,您可以從命令行方便地同時(shí)啟動(dòng)諸如eureka、zipkin、config server等服務(wù)(在開發(fā)時(shí)非常有用)。Spring Boot Cloud CLI 如何使用?
官方提供的最新版本是2.2.0.BUILD-SNAPSHOT,由于版本依賴的問題在運(yùn)行時(shí)出了一些問題,然后將版本改為了:
Spring CLI v1.5.18.RELEASE 點(diǎn)擊下載 更多版本查看
Spring Cloud CLI v1.3.2.RELEASE
1、安裝:1.1 需要先安裝Spring CLI
已liunx 為例:
首先將剛才下載的Spring CLI v1.5.18.RELEASE 解壓 ,然后命令設(shè)置如下:
export PATH=${PATH}:/spring-boot-cli-1.5.18.RELEASE/bin
windows:
set PATH=D:spring-boot-cli-1.5.18.RELEASEin;%PATH%
更多安裝方式參考官方文檔
檢查是否安裝成功:
spring --version
1.2安裝Spring Cloud CLI
命令如下:
spring install org.springframework.cloud:spring-cloud-cli:1.3.2.RELEASE
檢查是否安裝成功:
spring cloud --version2、運(yùn)行服務(wù)
在開發(fā)中運(yùn)行Spring Cloud Services。
Launcher CLI可用于從命令行運(yùn)行Eureka,Config Server等常用服務(wù)。列出您可以執(zhí)行的可用服務(wù)spring cloud --list,并僅啟動(dòng)一組默認(rèn)服務(wù)spring cloud。要選擇要部署的服務(wù),只需在命令行中列出它們,例如:
spring cloud eureka configserver h2 zipkin
支持的可部署的服務(wù)摘要:
Service | Name | Address | Description |
---|---|---|---|
eureka | Eureka Server | http://localhost:8761 | Eureka服務(wù)器用于服務(wù)注冊和發(fā)現(xiàn) |
configserver | Config Server | http://localhost:8888 | 配置服務(wù)并從本地目錄./launcher提供配置 |
h2 | H2 Database | http://localhost:9095 (console), jdbc:h2:tcp://localhost:9096/{data} | h2數(shù)據(jù)庫 |
kafka | Kafka Broker | http://localhost:9091 (actuator endpoints), localhost:9092 | |
hystrixdashboard | Hystrix Dashboard | http://localhost:7979 | 斷路器 |
dataflow | Dataflow Server | http://localhost:9393 | |
zipkin | Zipkin Server | http://localhost:9411 | 用于可視化跟蹤 |
stubrunner | Stub Runner Boot | http://localhost:8750 |
獲取幫助
spring help cloud
可以使用具有相同名稱的本地YAML文件(在當(dāng)前工作目錄或名為“config”或其中的子目錄)中配置這些應(yīng)用程序中的每一個(gè)~/.spring-cloud。例如,configserver.yml你可能想做這樣的事情來為后端找到一個(gè)本地git存儲(chǔ)庫:
configserver.yml
spring: profiles: active: git cloud: config: server: git: uri: file://${user.home}/dev/demo/config-repo3、 添加其他應(yīng)用
可以在./config目錄下添加自己定義的程序,例如:
./config/my-cloud.yml
spring: cloud: launcher: deployables: source: coordinates: maven://com.example:source:0.0.1-SNAPSHOT port: 7000 sink: coordinates: maven://com.example:sink:0.0.1-SNAPSHOT port: 7001
當(dāng)您使用
spring cloud --list
即可列出應(yīng)用
source sink configserver dataflow eureka h2 hystrixdashboard kafka stubrunner zipkin4、編寫Groovy腳本和運(yùn)行應(yīng)用程序
Spring Cloud CLI支持大多數(shù)Spring Cloud聲明性功能,例如@Enable*注釋類。例如,這是一個(gè)功能齊全的Eureka服務(wù)器
app.groovy
@EnableEurekaServer class Eureka {}
您可以從命令行運(yùn)行,如下所示
spring run app.groovy
要包含其他依賴項(xiàng),通常只需添加適當(dāng)?shù)膯⒂锰卣鞯淖⑨尲纯?,例如@EnableConfigServer, @EnableOAuth2Sso或@EnableEurekaClient。要手動(dòng)包含依賴項(xiàng),您可以使用@Grab特殊的“Spring Boot”短樣式工件坐標(biāo),即只使用工件ID(不需要組或版本信息),例如設(shè)置客戶端應(yīng)用程序以偵聽AMQP來自Spring CLoud Bus的管理活動(dòng):
app.groovy
@Grab("spring-cloud-starter-bus-amqp") @RestController class Service { @RequestMapping("/") def home() { [message: "Hello"] } }5、加密和解密
Spring Cloud CLI附帶“加密”和“解密”命令。兩者都接受相同形式的參數(shù),并將鍵指定為必需的“--key”,例如
$ spring encrypt mysecret --key foo 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda $ spring decrypt --key foo 682bc583f4641835fa2db009355293665d2647dade3375c0ee201de2a49f7bda mysecret
要在文件中使用密鑰(例如,用于加密的RSA公鑰),請?jiān)诿荑€值前加上“@”并提供文件路徑,例如
$ spring encrypt mysecret --key @ $ {HOME} /.ssh / id_rsa.pub AQAjPgt3eFZQXwt8tsHAVv / QHiY5sI2dRcR + ...參考資料
getting-started-installing-the-cli
Spring Boot Cloud CLI
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/76243.html
摘要:經(jīng)過年時(shí)間的發(fā)展,到目前為止,最新穩(wěn)定版為版本。的發(fā)展剛出生的時(shí)候,引起了很多開源社區(qū)的關(guān)注,并且也有個(gè)人和企業(yè)開始嘗試使用。通過項(xiàng)目搭建過程來對比的差異和優(yōu)勢。當(dāng)然它的作用不僅于此,后續(xù)會(huì)逐步揭開它的真實(shí)面目。而和就相當(dāng)于當(dāng)年的和的關(guān)系。 要了解Spring Boot的發(fā)展背景,還得從2004年Spring ...
摘要:系列文章更新計(jì)劃列表主要對一些中常用的框架進(jìn)行簡單的介紹及快速上手,外加相關(guān)資料的收集更新列表會(huì)不定期的加入新的內(nèi)容以進(jìn)行擴(kuò)充,如果你對此感興趣可以站內(nèi)聯(lián)系我。 導(dǎo)讀: 從第一次接觸Spring Boot 至今已經(jīng)有半年多了,在這期間也瀏覽了許多和Spring Boot 相關(guān)的書籍及文章,公司里面的許多項(xiàng)目也一直在使用Spring Boot。關(guān)于Spring Boot的一些看法:Spr...
摘要:容器自動(dòng)完成裝載,默認(rèn)的方式是這部分重點(diǎn)在常用模塊的使用以及的底層實(shí)現(xiàn)原理。 對于那些想面試高級 Java 崗位的同學(xué)來說,除了算法屬于比較「天方夜譚」的題目外,剩下針對實(shí)際工作的題目就屬于真正的本事了,熱門技術(shù)的細(xì)節(jié)和難點(diǎn)成為了主要考察的內(nèi)容。 這里說「天方夜譚」并不是說算法沒用,不切實(shí)際,而是想說算法平時(shí)其實(shí)很少用到,甚至面試官都對自己出的算法題一知半解。 這里總結(jié)打磨了 70 道...
閱讀 1396·2023-04-25 18:34
閱讀 3458·2021-11-19 09:40
閱讀 2836·2021-11-17 09:33
閱讀 2950·2021-11-12 10:36
閱讀 2837·2021-09-26 09:55
閱讀 2663·2021-08-05 10:03
閱讀 2527·2019-08-30 15:54
閱讀 2873·2019-08-30 15:54