ZBLOG

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

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

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

apiVersion: v1
kind: Pod
metadata:
  name: my-pod-with-env-vars
spec:
  containers:
    - name: alpine-container
      imagePullPolicy: IfNotPresent
      image: alpine
      command:
        - "sh"
        - "-c"
        - "echo $MY_ENV_VAR && sleep 3600"
      env:
        - name: MY_ENV_VAR
          value: "Hello, World!"

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

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

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

env:
  - name: ENV_VAR_1
    value: "Value of environment variable 1"
  - name: ENV_VAR_2
    value: "Value of environment variable 2"

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

spec:
  containers:
    - name: my-container-name
      imagePullPolicy : IfNotPresent
      image: my-image-name
      env:
        - name: ENV_VAR_1
          valueFrom:
            configMapKeyRef:
              name: my-config-map
              key: config-map-key-1
        - name: ENV_VAR_2
          valueFrom:
            secretKeyRef:
              name: my-secret
              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

注册

已经有帐号?