在容器内运行的spring boot应用程序如何访问作为卷安装在同一容器内的docker机密?
常用建议方法我不想使用:
- 将秘密回显到环境变量中-这是不安全的
- 将机密作为命令行参数传入-这会造成多个机密的混乱,并损害本地开发人员的体验
- 通过实现我自己的属性加载器手动从文件中读取机密-Spring必须有一种本地方法来做到这一点
Spring boot 2.4将此功能作为使用spring.config.import
属性的卷安装配置树的一部分引入
从默认位置集读取作为卷装载的docker机密:
spring.config.import = configtree:/run/secrets/
属性名称将从机密文件名和文件内容中的值派生而来。然后可以像访问任何其他弹簧特性一样访问它。