美文网首页
学习SpringCloud-config踏平的坑

学习SpringCloud-config踏平的坑

作者: 黑仔yt | 来源:发表于2019-04-03 22:14 被阅读0次

菜鸡黑仔,记录学习SpringCloud随记         2019-04-03

SpringCloud-config: 配置中心 以及 客户端

1:配置中心

    1.1 依赖是spring-cloud-config-server  而不是习惯用的各种start的依赖 spring-cloud-starter-config-server(错)    

    1.2 git仓库为私有时 yml配置文件需要账号密码,公开仓库则无所谓,(yml文件写上账号密 会快些)

    1.3 git仓库上的配置文件格式

application:程序名, profile:配置文件环境, label:git的分支,默认master

/{application}/{profile}[/{label}]

/{application}-{profile}.yml

/{label}/{application}-{profile}.yml

/{application}-{profile}.properties

/{label}/{application}-{profile}.properties

本例子:git上面有  config-server-dev.yml和 config-server-pro.yml

访问:http://127.0.0.1:2201/config-server/dev

http://127.0.0.1:2201/config-server/pro

访问后打印的json数据,其中 "propertySources":[]   为空这样是获取不到git上面的信息,配置中心失败

    1.4 配置文件加密,首先把jce版本的jar放到本地 {JAVA_HOME}/jre/lib/security目录下

[JCE for JDK8下载地址http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html]

然后加密密钥需写在 bootstrap.yml文件中(bootstrap.yml优先级比application.yml高),

对称密钥 encrypt: key: didispace

写在application.yml中时 出现

{

 "description":"No key was installed for encryption service",

    "status":""

}

配置完后 可以看相关端点,postman请求既可看到端点信息

/encrypt/status:查看加密功能状态的端点       【get】

/key:查看密钥的端点

/encrypt:对请求的body内容进行加密的端点   【post】

/decrypt:对请求的body内容进行解密的端点   【post】

相关例子:

    1.5 {cipher}sdfsdfsdffsdfsdfsd    配置文件中通过密钥 加密密文,带上前缀。如果远程属性源包含加密内容(以{cipher}开头的值),则在通过HTTP发送到客户端之前,它们将被解密。

如果要为config客户端应用程序设置远程配置存储库,可能会包含一个application.yml,例如:不同点 有引号无引号之分

application.yml

spring:

  datasource:

    username: dbuser

    password: '{cipher}8121eefc7b082d4c2c5c879e36e3b0a95f3cccebbc03d9b1475f10afdbeeae70'

.properties文件中的加密值不能用引号括起来,否则不会解密该值:

application.properties

spring.datasource.username: dbuser

spring.datasource.password: '{cipher}8121eefc7b082d4c2c5c879e36e3b0a95f3cccebbc03d9b1475f10afdbeeae70'

2:客户端

    2.1 客户端指定获取 配置中心 配置文件的config-server-git位置,配置信息需要写在bootstrap.yml中,不然代码中 @value 获取不到配置文件中的信息

项目启动报错Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'foo' in value "${foo}"

相关文章

  • 学习SpringCloud-config踏平的坑

    菜鸡黑仔,记录学习SpringCloud随记 2019-04-03 SpringCloud-config: ...

  • Tensorflow 历险记

    本文讲记录我在使用Tensorflow时遇到的种种坑,方便大家踏平这些坑。说实话,我现在有点相信曾经听说过的一位程...

  • springcloud-config

    概述:springcloud-config是一个利用git.svn等进行微服务的分布式配中心的东西,既然sprin...

  • springcloud-config

    一、config-server 1、配置文件:application.properties 2、在启动类中添加注解...

  • 踏平……京

    新冠肺炎 你面带口罩 若非总统 你逃之夭夭 相信奇迹 在口放狂屁 全球经济 你避无可避 贩卖战争 你核弹...

  • 踏平川

    踏平川 角梅枝繁绿青山,普洱又染子湖边。 只慕芭蕉彩蝶舞,茗心落叶几何年。 闲来挥汗绿茵上...

  • 踏平湖

    岁月就像马匹 将日子踩踏成凹地 然后被泪水灌满

  • 美丽的踏平湖

    踏平湖位于雄伟的沙洋大桥头,它像一颗璀璨无比的明珠镶嵌在沙洋肥沃的土地上。 踏平湖风景优美,它的外形像一个弯弯的大...

  • SpringCloud-config 配置中心

    SpringCloud的配置中心默认使用Git存储,也可以使用其它方式存储,在微服务环境下,需要同时管理N个微服务...

  • 微服务-springcloud-config

    一、config-server 1、配置文件:application.properties 2、在启动类中添加注解...

网友评论

      本文标题:学习SpringCloud-config踏平的坑

      本文链接:https://www.haomeiwen.com/subject/cpmtiqtx.html