ZBLOG

k8s yaml中怎样使用环境变量?

在 Kubernetes 的 YAML 文件中,可以使用 env 字段来定义容器的环境变量。

以下是一个包含环境变量的 Kubernetes YAML 文件示例:

  1. apiVersion: v1
  2. kind: Pod
  3. metadata:
  4. name: my-pod-with-env-vars
  5. spec:
  6. containers:
  7. - name: alpine-container
  8. imagePullPolicy: IfNotPresent
  9. image: alpine
  10. command:
  11. - "sh"
  12. - "-c"
  13. - "echo $MY_ENV_VAR && sleep 3600"
  14. env:
  15. - name: MY_ENV_VAR
  16. value: "Hello, World!"

上面这个 YAML 文件定义了一个 Pod,并在其中创建了一个名为 alpine-container 的容器。该容器将打印环境变量 MY_ENV_VAR 的值,并进入睡眠状态。

在此示例中,我们通过 env 字段将环境变量传递给容器。其中,name 属性指定了环境变量的名称,而 value 属性则指定了其值。

可以添加多个环境变量到同一个容器中。只需要像下面这样继续向 env 数组添加更多元素即可:

  1. env:
  2. - name: ENV_VAR_1
  3. value: "Value of environment variable 1"
  4. - name: ENV_VAR_2
  5. value: "Value of environment variable 2"

也可以从 ConfigMap 或 Secret 中加载环境变量。例如:

  1. spec:
  2. containers:
  3. - name: my-container-name
  4. imagePullPolicy : IfNotPresent
  5. image: my-image-name
  6. env:
  7. - name: ENV_VAR_1
  8. valueFrom:
  9. configMapKeyRef:
  10. name: my-config-map
  11. key: config-map-key-1
  12. - name: ENV_VAR_2
  13. valueFrom:
  14. secretKeyRef:
  15. name: my-secret
  16. key: secret-key-1

上面这个示例中,我们从 ConfigMap my-config-map 中加载了环境变量 ENV_VAR_1 的值,并从 Secret my-secret 中加载了环境变量 ENV_VAR_2 的值。在使用这种方式时,需要确保 ConfigMap 和 Secret 已经存在于 Kubernetes 集群中。

本站部分文章来源于网络,版权归原作者所有,如有侵权请联系站长删除。
转载请注明出处:https://golang.0voice.com/?id=2908

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
游客 游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~

联系我们

在线咨询: 点击这里给我发消息

微信号:3007537140

上班时间: 10:30-22:30

关注我们
x

注册

已经有帐号?