【发布时间】:2020-11-16 16:36:24
【问题描述】:
我在 openshift 环境中运行 SCDF。我使用 SCDF 在同一环境中启动批处理作业(spring.application.name=EmployeeBatchJob)。现在我需要将 EmployeeBatchJob 的 application.properties 外部化,尤其是数据源密码,所以我不会在我的 git repo 中的任何地方维护密码。
我使用 ConfigMap 为 SCDF 指定数据源。批处理应用程序需要两个数据源。因此,如果我想将批处理应用程序的 application.properties 外部化,是否应该仅为批处理应用程序创建单独的 configMap ?如果是这样,如何在 SCDF 启动的 POD 中引用/访问该配置映射。 (这里我已经外部化了两个数据源)。引用该 configmap 所需的所有属性是什么?
EmployeeBatchJob application.properties
spring.datasource.source1.password = abcd
spring.datasource.source2.password = efgh
These two properties of application should be moved to configmap and read by the POD when deployed from SCDF as Job
我尝试了 Cloud-config-map。但我仍然会将密码存储在 git repo 中。所以我正在寻找将它存储在 openshift 环境中并访问它的方法。
对于普通的 Spring Boot 应用程序,我们可以使用 ConfigMap 并将其作为卷挂载在 SpringBoot 应用程序的部署配置中。但我正在使用 SCDF 来启动我的批处理应用程序(EmployeeBatchJob)。
任何帮助将不胜感激。谢谢
【问题讨论】:
标签: spring-boot spring-batch openshift spring-cloud-dataflow configmap