I've a Deployment
我使用以下方法公开 POD ID 的对象向下API https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/。效果很好。但是,我想设置另一个环境变量,即日志路径,并参考 POD ID。但是,将该变量值设置为/var/log/mycompany/${POD_ID}/logs
不起作用,容器中不会创建任何日志。
我可以让入口点脚本或应用程序了解 POD ID,并构建日志路径,但我不想这样做。
正确的语法是使用$(FOO)
,如中所述v1.EnvVarvalue:文档 https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.19/#envvar-v1-core;您使用的语法是“shell”语法,这不是 kubernetes 插入变量的方式。所以:
containers:
- env:
- name: POD_ID
valueFrom: # etc etc
- name: LOG_PATH
value: /var/log/mycompany/$(POD_ID)/logs
另请注意,正如文档中提到的,要扩展的变量必须在引用它的变量之前定义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)