目前,我在datasource.properties文件中包含以下内容,以便在本地连接到数据源……
//datasource.properties
spring.datasource.password=${DB_PASSWORD}
这在本地运行得很好,但现在我正在尝试创建一个docker镜像。为了存储数据,我宁愿使用secret而不是环境变量(或者甚至可以使用secret,然后在未找到的地方使用env var )。我现在已经在本地docker镜像中设置了这个秘密,但是我不知道如何使用代码而不是属性来设置spring.datasource.password。
如何使用docker密钥设置"spring.datasource.password“?
发布于 2019-04-07 03:42:50
借助EnvironmentPostProcessor接口的customized implementation,可以在application.yml中设置"spring.datasource.password“,如下所示
spring:
datasource:
password: ${docker-secret-my-db-passwd}
容器内绑定的docker密钥以/run/secrets文件夹下的文件的形式显示。EnvironmentPostProcessor实现加载这些文件作为环境属性。
这个想法也在Spring boot reference - Encrypted Properties中被引入。
https://stackoverflow.com/questions/52630362
复制相似问题