![cover](https://img-blog.csdnimg.cn/img_convert/7ca7738362d74dc0867c0c0ec139a490.png)
11. 配置了环境变量后,os.Getenv(“ENV“)还是没值,但echo $ENV有值
然后重启IDE, 不重启os.Getenv(“ENV”)是拿不到值的。在 bash_profile文件里加上。这时候 echo $ENV有值了。都没有的话,可能是k8s导致的。,然后用下面的命令使其生效。通过下面的方式进行配置。
·
os.Getenv(“ENV”)没值,可能是环境变量没有配置
通过下面的方式进行配置
lizhen@C02G73ZGMD6M ~ % vim ~/.bash_profile
在 bash_profile文件里加上 export ENV= test
,然后用下面的命令使其生效
lizhen@C02G73ZGMD6M ~ % source ~/.bash_profile
这时候 echo $ENV有值了。
然后重启IDE, 不重启os.Getenv(“ENV”)是拿不到值的。
pod里 echo $ENV有值,但是找了所有的配置文件都没值,怎么回事?
ubuntu环境变量的所有配置文件位置: ~/.bashsrc, ~/.profile, /etc/profile, /etc/bashsrc
都没有的话,可能是k8s导致的。
原因可能有以下几种:
- $ENV是一个环境变量,它可能是在pod的定义中通过env或envFrom设置的,而不是在配置文件中。你可以使用kubectl describe pod 来查看pod的环境变量。
- $ENV是一个动态变量,它可能是在pod启动时或运行时由其他程序或命令设置的,而不是在配置文件中。你可以使用kubectl exec pod – env | grep ENV来查看pod内部的环境变量。
- $ENV是一个本地变量,它可能是在你的本地shell中定义的,而不是在pod中。当你使用kubectl exec pod – echo E N V 时, ENV时, ENV时,ENV会被你的本地shell展开,而不是pod内部的shell。
更多推荐
所有评论(0)