【问题标题】:Spring cloud config with github使用 github 进行 Spring Cloud 配置
【发布时间】:2019-04-14 21:37:11
【问题描述】:

我在github上使用spring cloud config时遇到了一个问题。我的英语不太好,希望我能清楚地解释这个问题。并且认为 你们阅读本文。

问题是关于使用 github 的 Spring Cloud Config。当我将更多折叠和配置文件添加到包含我所有云配置文件的存储库时,它就发生了。

首先,我在config server的application.yml文件中的cloud.config.server.git下设置了uri,searchPaths,username,password。

然后,我将我所有的配置文件推送到 github。我调用了父存储库 ConfigRepo,在这个 repo 中,我有两个名为 A 和 B 的文件夹。 结构是这样的。

-ConfigRepo   
  -A
    -A.yml   
  -B
    -B.yml

最后,我在它们的 bootstrap.yml 中设置了其他应用程序的应用程序名称,即 A 和 B。

完成后,我启动了我的应用程序。所有客户端服务器都可以找到配置服务器并通过 url 获取正确的配置 yml 文件。例如,客户端 A 从

获取其配置

github.com/user/ConfigRepo/A/A.yml

但是由于我需要添加一个新的应用程序C,所以我创建了一个新文件夹C来保存和保存应用程序C的配置文件并将其推送到github。

我像上面一样完成了应用程序C的配置工作并启动它。但是我发现代表配置文件的url已经改变了。我的意思是,它应该是

github.com/user/ConfigRepo/C/C.yml

但其实github的url已经改成了

github.com/user/ConfigRepo/tree/master/C/C.yml

更糟糕的是,不仅代表C的配置文件的url变了,ConfigRepo中所有代表配置文件的url都变了。

无论我如何更改 cloud.config.server.git 下的 uri 或 searchPaths,客户端服务器的日志都显示定位属性源的 mapPropertySource 的名称始终是

github.com/user/ConfigRepo/C/C.yml

因此,我无法获取除 null 之外的任何配置,因此所有应用程序都无法启动,甚至包括在我将新配置文件推送到 github 之前可以启动的 A 和 B。

那么,我该怎么办?是一种让 github 摆脱 url 中的 /tree/master 的方法吗?或者如何配置我的配置服务器以支持我的项目?

再次感谢!

【问题讨论】:

  • 对不起,这是我的错。 Spring Cloud Config 做得很好,我的 yml 文件中有一些拼写错误。Spring Cloud Config 可以从 github 检索信息,无论 url 是否包含“tree/master”部分,并且不需要记录它部分。再次感谢!

标签: github spring-cloud spring-cloud-config


【解决方案1】:

我们正在做微服务项目,并使用以下配置从 GitHub 检索配置。您需要将标签添加为 master 以检索配置。

spring:
  application:
    name: ####
  profiles:
    active: ####
  cloud:
    enable: true
    config:
      uri: ${CONFIG_SERVER_URL}
      failFast: true
      retry:
        maxAttempts: 20
      label: master
      profile: ######

【讨论】:

  • 嗨,兄弟,感谢您的回答。我认为标签“master”是 Spring 默认提供的,所以我没有将它添加到我的客户端服务器配置中。但是在我按照你说的那样更改它之后,它仍然无法工作。似乎它仍然尝试向“发送请求” github.com/user/ConfigRepo/C/C.yml”,但这个网址实际上并不存在。由于某种原因,在我向我的 github 的存储库中添加了更多文件后,该 url 已更改为“github.com/用户/ConfigRepo/tree/master/C/C.yml”。换句话说,在我将这些文件添加到存储库之前,url 不包含“树/主”部分,所有应用程序都运行良好....
  • 再次检查了我的代码,这是我的错。我的 yml 文件中存在拼写错误,但我的所有注意力都被 url 的日志吸引了。再次感谢兄弟。
猜你喜欢
  • 2019-01-07
  • 1970-01-01
  • 2016-08-06
  • 2016-05-19
  • 2018-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多