InitContainer 在同一个 Pod 中运行时是否可以更改应用程序容器的环境变量?
请注意,我正在寻找一个详细的答案,描述为什么这是或不可能的技术原因。示例:'当前的容器技术支持容器之间的环境变量隔离,Pod 无法通过将容器“分组”在同一个“环境变量空间”中来绕过该限制'。
InitContainer 在同一个 Pod 中运行时是否可以更改应用程序容器的环境变量?
请注意,我正在寻找一个详细的答案,描述为什么这是或不可能的技术原因。示例:'当前的容器技术支持容器之间的环境变量隔离,Pod 无法通过将容器“分组”在同一个“环境变量空间”中来绕过该限制'。
简短的回答是不,他们不能。
您可以尝试使用ShareProcessNamespace和gdb进行一些破解,但可以肯定的是,这不是您要解决的问题的正确解决方案。
不,不可能像那样改变变量。一种可能的解决方法是使用在主容器和主容器EmptyDir
之间共享的卷。InitContainer
您可以使用文件将变量存储在InitContainer
其中,并使用一些简单的 shell 脚本将它们加载到主容器中。