Kubernetes 如何使用initContainer设置环境变量或修改主容器的启动命令?

Kubernetes 如何使用initContainer设置环境变量或修改主容器的启动命令?,kubernetes,Kubernetes,我有一个应用程序需要知道它被分配了节点端口。不幸的是,无法将文件写入可装载卷,然后在主容器中读取该文件。因此,我正在寻找一种方法,要么让initContainer设置一个传递给主容器的环境变量,要么修改主pod的launch命令以添加一个额外的CLI参数。我似乎找不到任何示例或文档可以引导我找到这个答案。TIA。没有直接的方法,所以你必须要有创造力。例如,您可以创建两个容器都可以访问的共享emptyDir装载,让initContainer将export FOO=bar写入该文件,然后将主容器命令

我有一个应用程序需要知道它被分配了节点端口。不幸的是,无法将文件写入可装载卷,然后在主容器中读取该文件。因此,我正在寻找一种方法,要么让initContainer设置一个传递给主容器的环境变量,要么修改主pod的launch命令以添加一个额外的CLI参数。我似乎找不到任何示例或文档可以引导我找到这个答案。TIA。

没有直接的方法,所以你必须要有创造力。例如,您可以创建两个容器都可以访问的共享emptyDir装载,让initContainer将
export FOO=bar
写入该文件,然后将主容器命令更改为类似
[bash,-c,“source/thatfile&&exec originalcommand”]