使用ConfigMap为Kubernetes Pods填充环境变量的实例

264 阅读1分钟

你可以单独为Kubernetes Pods填充环境变量(env),或者一次性全部填充(envFrom)。更喜欢envFrom ,因为它使事情变得非常简单和干净。

例如

configmap.yaml

apiVersion: v1
kind: ConfigMap

metadata:
  name: address-finder-config

data:
  VERSION: ""
  HTTP_ADDRESS: :8888
  LOG_LEVEL: info
#  version: ""
#  http_address: :8888
#  log_level: info

deployment.yaml

apiVersion: apps/v1
kind: Deployment

metadata:
  name: address-finder-deployment
  labels:
    app: address-finder

spec:
  replicas: 1
  selector:
    matchLabels:
      app: address-finder
  template:
    metadata:
      labels:
        app: address-finder
    spec:
      containers:
        - name: golang
          image: you/address-finder:latest
          envFrom:
            - configMapRef:
                name: address-finder-config
#          env:
#            - name: VERSION
#              valueFrom:
#                configMapKeyRef:
#                  name: address-finder-config
#                  key: version
#            - name: HTTP_ADDRESS
#              valueFrom:
#                configMapKeyRef:
#                  name: address-finder-config
#                  key: http_address
#            - name: LOG_LEVEL
#              valueFrom:
#                configMapKeyRef:
#                  name: address-finder-config
#                  key: log_level