【发布时间】:2022-01-04 06:53:43
【问题描述】:
我编写了 golang 程序,它使用 export var name = somevalue 从系统中设置的环境变量中获取值。
cloudType = os.Getenv("CLOUD_TYPE")
clusterRegion = os.Getenv("CLUSTER_REGION")
clusterType = os.Getenv("CLUSTER_TYPE")
clusterName = os.Getenv("CLUSTER_NAME")
clusterID = os.Getenv("CLUSTER_ID")
如上所述,我的程序尝试使用 getenv func 从系统中设置的 env var 中获取值。如果运行该程序并从 env 变量中获取值,则该程序运行良好。但是当我尝试构建图像并在 pod 中运行它时,它能够从 env var 中获取值。它给出了空值。有什么方法可以从 pod 访问本地环境变量?
【问题讨论】:
-
环境变量未“在我的系统中设置”。相反,它们被设置在一个进程中,并从那里传递给从那里开始的子进程。这与 Go 无关,顺便说一句,这是操作系统的工作方式。
-
能否执行到 pod 中,列出环境变量并检查是否能找到您设置的变量?
-
我没有在 pod 中设置环境变量。我在我的系统中本地设置它。
标签: go kubernetes environment-variables amazon-eks kubernetes-pod