SpringBoot CLI 是spring Boot项目的脚手架工具。而本文的Spring Cloud cli则是基于SpringBoot Client的一个插件,用于支持Cloud相关的组件。
由于各种原因,目前用起来并不是很爽:
- repo 经常连不上
- 启动非常慢,要等半天
- 遇到问题排查不是很容易
但是,功能很有意思,值得期待。也许有一天变的像 docker swarm 那样直接启动分布式的服务,就完美了。
SpringBoot Client文档: https://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#getting-started-installing-the-cli
SpringCLoud Client 文档: http://cloud.spring.io/spring-cloud-static/spring-cloud-cli/1.3.2.RELEASE/
组件仓库:https://repo.spring.io/webapp/#/home
安装springboot client
通用的安装方式是下载编译版,设置PATH环境变量即可。
下载如下的二进制包:
https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/1.5.10.RELEASE/spring-boot-cli-1.5.10.RELEASE-bin.tar.gz
解压并设置环境能量:
1
2
3
|
tar xvfz spring-boot-cli-1.5.10.RELEASE-bin.tar.gz
cd spring-1.5.10.RELEASE
export PATH=$PATH:$PWD/bin
|
官网文档还提供了其他sdkman、brew等安装方式,你可能并不是对应的操作系统,也可能没有对应的包管理器。因此个人不建议考虑,直接下载二进制包即可。
安装cloud插件
默认spring命令并没有cloud子命令:
1
2
|
$ spring cloud eureka
'cloud' is not a valid command . See 'help' .
|
安装spring cloud插件:
1
|
spring install org.springframework.cloud:spring-cloud-cli:1.4.1.BUILD-SNAPSHOT
|
默认插件会安装在cli目录的/lib/ext 子目录中。
查看cloud子命令目前支持的组件:
1
2
|
$ spring cloud --list
configserver dataflow eureka h2 hystrixdashboard kafka stubrunner zipkin
|
命令会实时查询 http://repo.spring.io ,如果连接不上,悲催了。
启动组件
在开发环境可快速启动一个Eureka注册中心:
1
|
$ spring cloud eureka
|
默认的端口是8761,访问测试地址查看是否成功启动:http://localhost:8761
如果启动多个组件,直接写多个组件名称即可。如:
1
|
$ spring cloud eureka configserver h2 kafka zipkin
|
https://spring.io/blog/2016/11/02/introducing-the-spring-cloud-cli-launcher
各个服务默认的端口:
- eureka http://localhost:8761
- configserver http://localhost:8888
- h2 http://localhost:9095 (console), jdbc:h2:tcp://localhost:9096/{data}
- kafka http://localhost:9091 (actuator endpoints), localhost:9092
- hystrixdashboard http://localhost:7979
- dataflow http://localhost:9393
- zipkin http://localhost:9411
在独立进程中启动
默认情况下,同事时启动多个组件时,会在同一个进程中启动所有组件。即:
1
|
spring cloud --deployer=thin
|
如果你希望你在一个独立的进程中启动每一个组件,可以如下启动:
1
|
spring cloud --deployer= local
|
应用profile
如果定义了profile,可以在启动时指定激活的profile,如內建configserver配置了一个rabbit profile,用于设置启用rabbit代替kafka。具体可查看源码:
https://github.com/spring-cloud/spring-cloud-cli/blob/master/spring-cloud-launcher/spring-cloud-launcher-deployer/src/main/resources/cloud.yml
启动方式:
1
|
spring cloud configserver -p rabbit
|
修改组件配置
如果希望定制某个组件的参数,可以创建一个配置文件,目录可以是:
- 工作目录
- 工作目录中的 config/
- 用户目录中的 ~/.spring-cloud/
配置文件名为组件名,如: eureka.yml。 比如我们希望eureka的端口号为:1111,则创建 eureka.properties:
1
2
|
server:
port: 1111
|
注意:文件扩展名必须是yml,不支持properties。
定制自己的组件
比如我自己创建了一个spring-boot-initializr组件,那么我们也可以把自己的组件加入到配置中,这样也很方便的启动。
在工作目录创建:config/cloud.yml
1
2
3
4
5
6
7
8
9
|
spring:
cloud:
launcher:
deployables:
initializr:
coordinates: com.pollyduan:springInitializr:1.0-M1
port: 7000
application-properties:
server.address: localhost
|
其中deployables中的属性:initializr 表示自定义组件的名称,coordinates 表示maven坐标,形式看起来是gradle的依赖格式,而 port比较好理解了,就是默认的端口。
检查一下:
1
2
|
$ spring cloud --list
initializr configserver dataflow eureka h2 hystrixdashboard kafka stubrunner zipkin
|
返回的组件列表里多了一个 initializr,可以启动试一下:
1
|
$ spring cloud initializr
|
访问 http://localhost:7000 检查一下吧。
这里说明一下,配置中的 application-properties 是配置了默认的application的属性,会覆盖原项目中的 application 配置信息。
配置组件小结
因此总结起来,配置一个组件的属性有三中途径:
- 在原项目的application中配置;
- 在 cloud.yml 重配置;
- 在 [module].yml 重配置。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持快网idc。
原文链接:https://my.oschina.net/polly/blog/1788445
相关文章
- ASP.NET本地开发时常见的配置错误及解决方法? 2025-06-10
- ASP.NET自助建站系统的数据库备份与恢复操作指南 2025-06-10
- 个人网站服务器域名解析设置指南:从购买到绑定全流程 2025-06-10
- 个人网站搭建:如何挑选具有弹性扩展能力的服务器? 2025-06-10
- 个人服务器网站搭建:如何选择适合自己的建站程序或框架? 2025-06-10
- 2025-07-10 怎样使用阿里云的安全工具进行服务器漏洞扫描和修复?
- 2025-07-10 怎样使用命令行工具优化Linux云服务器的Ping性能?
- 2025-07-10 怎样使用Xshell连接华为云服务器,实现高效远程管理?
- 2025-07-10 怎样利用云服务器D盘搭建稳定、高效的网站托管环境?
- 2025-07-10 怎样使用阿里云的安全组功能来增强服务器防火墙的安全性?
快网idc优惠网
QQ交流群
-
Spring Boot整合logback一个简单的日志集成架构
2025-05-29 61 -
2025-05-29 50
-
2025-05-25 100
-
thinkphp 5框架实现登陆,登出及session登陆状态检测功能示例
2025-05-29 64 -
2025-05-29 59