如何使用通过 Helm 部署的 Java Spring 引导应用程序中的配置映射中的属性
我有简单的Spring boot应用程序,我需要在开发时部署它,并使用Helm在Kubernetes集群上生产不同的命名空间。
我正在考虑为每个环境保留多个 application.properties(application-dev.properties、application-prod.properties)文件,然后通过 values.yaml 文件从它们创建配置映射,这些文件对于每个环境也是不同的,并在我执行 Helm 升级时指定。
现在的问题是,我如何使用config.maps中的值,因为我可以把属性文件挂载在容器内,例如/deployment/application.properties。
或者将每个属性公开为容器内的环境变量。
但是,如何从 Java 应用程序中使用它们呢?
此外,在我创建容器映像时,它在/resources/文件中嵌入了当前的应用程序.properties,这是应用程序默认使用的内容,因此当应用程序在容器内运行时,我需要覆盖此行为,因为它只是在开发人员桌面上手动构建和运行时。