我们正在使用 Kubernetes v1.1.0-beta,我很好奇 Kubernetes 是否支持env_file
,比如 Docker Compose?在创建 Pod/ReplicationController 时,它会读取 env_file 指定的文件并设置该 Pod 上的变量。这是个东西还是只是env
映射?
答案1
evv_file
不可以。Kubernetes目前不支持。您必须key=value
为环境变量指定对。
答案2
您可以使用配置映射来实现这一点。因此,您可以部署一个包含所需键值对的配置映射,这样在部署过程中就可以保持稳定。您甚至可以部署多个配置映射,这样就可以为不同的环境设置不同的值。
然后在你的 pod yaml 文件中,你可以执行如下操作,将 configmap 值公开为环境变量
env:
# Define the environment variable
- name: SPECIAL_LEVEL_KEY
valueFrom:
configMapKeyRef:
# The ConfigMap containing the value you want to assign to SPECIAL_LEVEL_KEY
name: special-config
# Specify the key associated with the value
key: special.how
如果有任何敏感数据(如密码、数据库连接 URI 等),则应改用 secrets。与 configmaps 不同,secrets 是隐藏的。
更多信息请点击这里 ->https://kubernetes.io/docs/concepts/configuration/secret/