如何为 pod 创建一个 yaml 文件,该文件从 yaml 文件中定义的环境变量中获取其名称。
我已尝试过但不允许。
metadata:
generateName: $(HOSTNAME)
.
.
.
env:
- name: HOSTNAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
答案1
Kubernetes 允许您使用 Pod 定义中其他字段的值来设置环境变量,这些字段仅在启动 Pod 时可用。
在您的示例中,您尝试设置spec.nodeName
而不是metadata.name
。您的配置应如下所示:
env:
- name: MY_POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
这里您可以找到有关如何设置的官方示例。
如果有帮助的话请告诉我。