从 init 容器中将机密作为 ENV 加载

Loading secrets as ENV from init container

我们将机密存储在 GCP 机密管理器中,在应用程序部署期间,我们使用 init 容器获取机密并将它们放置在卷(路径)中。展望未来,我们需要的要求是将机密作为 env 变量加载到需要来自 init 容器的机密的主容器上,而不是路径。如何实现?任何解决方法?

谢谢!

您可以从 GSM 复制到 Kubernetes Secret,然后在正常情况下使用它 envFrom 或者您可以让 init 容器将文件写入共享的 emptyDir 卷,然后更改主容器上的命令成为 command: [bash, -c, "source /shared/env && exec original command"] 之类的东西。后者要求您完全重写命令,但这很烦人。