spring-boot - 无法使用 PCF 配置服务器服务中的配置客户端应用程序读取属性值
问题描述
在我的 PCF 日志中,配置客户端应用程序给出“ConfigServicePropertySourceLocator:无法找到 PropertySource:401 Unauthorized”
我有 gitlab 存储库来在 PCF 配置服务器中提供属性文件。如果我检查配置服务器 - > 管理 - > 它给出“配置服务器在线”
我在哪里缺少配置?
bootstrap.yml 配置客户端应用程序
spring:
application:
name: <config-client-name>
cloud:
config:
enabled: true
name: <config-server-instance-name>
uri: <uri details from view credential modal>
# username: <tried different permutations to get it working>
# password: <tried different permutations to get it working>
management:
security:
enabled: false
manifest.yml 配置客户端应用程序
applications:
- name: <app-name>
host: <app-name>
memory: 1024M
instances: 1
path: /target/<app-name>-0.0.1-SNAPSHOT.jar
buildpack: java_buildpack_offline
services:
- <pcf config server instance name>
env:
SPRING_PROFILES_ACTIVE: dev
我做了很多工作以获得一些结果,但没有运气,示例应用程序运行良好。我已经使用 github 存储库尝试了我自己的配置服务器和配置客户端应用程序,并且它有效。
但是在 PCF 中我完全被卡住了,请帮忙。
解决方案
您的配置看起来没有任何问题。如果您在 PCF 中看到配置服务器在线,则表示配置服务已正确初始化并可以使用。
但是,让我们尝试使用适合您的示例应用程序。
build.gradle
如果您正在使用 gradle build ,请在您身上添加以下信息(或pom.xml
相应地添加。)
SCS(Spring Cloud services)
springBootVersion = '2.0.6.RELEASE'
(如果您使用不同版本的 spring-boot,提到的版本与 Check for Comparability 兼容。)进口{
mavenBom "io.pivotal.spring.cloud:spring-cloud-services-dependencies:2.0.1.RELEASE" mavenBom "org.springframework.cloud:spring-cloud-dependencies:Finchley.RELEASE" }
包括配置客户端依赖项
compile("io.pivotal.spring.cloud:spring-cloud-services-starter-config-client")
现在让我们转到bootstrap.yml
:仅以下信息就足以选择属性
spring:
application:
name: <config-client-name>
application.yml
如果您在推送到 PCF 时使用相同的活动配置文件,则无需更改。
推荐阅读
- python - PCA 无法在散点图上获得颜色
- angular - 如何在不刷新窗口的情况下从后端重新加载数据?
- angular - Firestore 安全规则 - 只允许 Story 成员读取
- org-mode - 将 orgmode doc 导出到 freemind 时如何指定无限数量的级别?
- java - 如何检查Array中的两个char值是否相同?
- javascript - 如何从咖啡脚本中使用 vue?
- python - 使用列表理解将字符串拆分为 K 个子字符串
- c++ - C++ 从受保护的抽象/派生类创建变量
- php - 在 laravel 中获取 REFERRER
- c - 为什么 gcc 使用 -I 选项找不到包含路径?