【发布时间】:2019-11-14 19:59:38
【问题描述】:
k8s 新手。
我的配置图看起来像
apiVersion: v1
kind: ConfigMap
metadata:
name: example-configmap-overriding-new-01
data:
application.properties: |
globalkey = global key value
TeamName = Team Name value
#Some other key value pairs
application-qa.properties: |
globalkey = global key qa value
TeamName = Team Name qa value
#Some other key value pairs
application-prod.properties: |
globalkey = global key prod value
Company = company prod value
#Some other key value pairs
在我的 Spring Boot 应用程序中尝试使用此配置映射时,应用程序没有从配置映射中获取值。 它说,
Injection of autowired dependencies failed; nested exception is java.lang.IllegalArgumentException:
Could not resolve placeholder 'globalkey' in value "${globalkey}"
发布了这个问题HERE。
不幸的是,看到 configmap 将环境变量注入到容器中。共享日志以供参考。
application.properties=globalkey = global key value
TeamName = Team Name value
Purpose = Purpose value
RootFile = Root file value
Company = company value
Place = Place value
Country = Country value
application-prod.properties=globalkey = global key prod value
Company = company prod value
Place = Place prod value
Country = Country prod value
application-qa.properties=globalkey = global key qa value
TeamName = Team Name qa value
Purpose = Purpose qa value
RootFile = Root file qa value
#Some other key values pairs injected by k8s
我相信,从日志中,“application.properties=globalkey = global key value”,没有见过这样的键值对。
怀疑,注入 configmap 时出了点问题。有没有语法错误?
PS:- 我也试过下面的语法。
apiVersion: v1
kind: ConfigMap
metadata:
name: example-configmap-overriding-new-01
data:
application.properties: |-
globalkey = global key value
application-qa.properties: |-
globalkey = global key qa value
我在 windows 10 pro 机器上使用 minikube 进行本地开发。
有人可以在这里分享见解吗?
PS:我在问为什么 env 变量显示为“application.properties=globalkey = global key value”,并且我还链接了问题的来源。在旧问题中,我问“无法从 configmap 读取”。在新问题中,我问“多配置文件配置映射未正确注入容器”
【问题讨论】:
-
他的上一个问题已经回答了这个问题:stackoverflow.com/questions/56863782/… Using volumeMount with configmap is the solution asSuggested in the above question.
-
@Malathi:感谢 cmets。我已经在这个问题中标记了“stackoverflow.com/questions/56863782/…”。旧问题和新问题都不同,我在这两个地方提出的问题也不同。我还没有得到任何问题的答案。 “将volumeMount与configmap一起使用是上述问题中建议的解决方案” - 这不起作用,我也发表了同样的评论。欣赏,在投票之前先解决问题!谢谢。
标签: spring-boot kubernetes minikube application.properties configmap