k8s configMap
Changing the main process of a containerPassing command-line options to the appSetting environment variables exposed to the appConfiguring apps through ConfigMapsPassing sensitive information ...
- Changing the main process of a container
- Passing command-line options to the app
- Setting environment variables exposed to the app
- Configuring apps through ConfigMaps
- Passing sensitive information through Secrets
部署一个app,配置可以通过command-line,当配置选项多了后,可以通过config file(保密性不强且每次更改都要重新创建image),或者是环境变量(在container中最常用)
一些配置参数放configureFile里嵌入image中的话每一个可以进入image的人都可以看到一些私密的参数信息如数据库密码等,而且每次改动参数都要rebuild image,所以用到了configMap。
configMap可以在命令行中用$(ENV_VAR)的方式来使用。
使用configmap的valueFrom intead of value field可以reuse the same pod definition in multiple environments,从而达到配置和pod descriptor解耦的目的。
configmap是KV形式的,也可以是一个文件夹。一般是将disk里的一个文件夹create为一个configMap,然后就可以通过valueFrom将这些KV作为环境变量传进container。
A configMap volume will expose each entry of the ConfigMap as a file. The process running in the container can obtain the entry’s value by reading the contents of the file.
可以通过设置configMapKeyRef。optional:true来选择一个configmap是否可以为空,这样就可以做成通用的一个configmap。
当你更新了configmap后,process会监测到并reload,但这会花费大约一分钟的时间。
更多推荐
所有评论(0)