【问题标题】:Is it possible for 2 containers inside a Pod to share the same Environment Variables?Pod 中的 2 个容器是否可以共享相同的环境变量?
【发布时间】:2018-05-06 19:31:23
【问题描述】:

InitContainer 在同一个 Pod 中运行时是否可以改变应用容器的环境变量?

请注意,我正在寻找一个详细的答案,该答案描述了这可能或不可能的技术原因。示例:'当前的容器技术支持容器之间的环境变量隔离,Pod 无法通过将容器“分组”在同一个“环境变量空间”中来绕过该限制。

【问题讨论】:

    标签: kubernetes containers windows-container


    【解决方案1】:

    简短的回答是不,他们不能。

    您可以尝试使用ShareProcessNamespacegdb 进行一些破解,但对于您要解决的问题,这肯定不是正确的解决方案。

    【讨论】:

    • 我将不胜感激。
    • 更长的答案取决于您要达到的目标。我可以想象两个选项(如果是别的,请告诉我):1.您正在尝试简化您的 deployment.yaml 文件以避免重复设置相同的变量,2.您正在尝试使用 env 作为某种形式的进程间通信.忘记 2:stackoverflow.com/questions/263005/… 关于 1 - 在标准 kubernetes 中没有语法糖。但您可以使用一些诱人的解决方案,例如 helm 或 ksonnet。
    • Maciek 长话短说,我们有不想更改的现有容器。
    • 嗨,这仍然不可能吗?因为我有一个 NodeJS 应用程序,它基本上在一个 pod 内运行两个自身,但从两个不同的秘密中获取 env 变量
    【解决方案2】:

    不,不可能像那样更改变量。一种可能的解决方法是使用在InitContainer 和主容器之间共享的EmptyDir 卷。您可以使用 InitContainer 中的文件将变量存储在那里,并使用一些简单的 shell 脚本将它们加载到主容器中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-11-19
      • 1970-01-01
      相关资源
      最近更新 更多