第 22 章 ConfigMaps
22.1. 概述
许多应用程序需要使用配置文件、命令行参数和环境变量的某些组合来进行配置。这些配置工件应该与镜像内容分离,以便使容器化应用程序可以移植。
ConfigMap
对象提供向容器注入配置数据的机制,同时保持容器与 OpenShift Container Platform 无关。ConfigMap
可用于存储细粒度信息(如个别属性)或粒度信息(如完整配置文件或 JSON blob)。
ConfigMap
API 对象包含配置数据的键值对,这些数据可在 Pod 中消耗或用于存储控制器等系统组件的配置数据。ConfigMap
与 secret 类似,但设计为能更加便捷地支持与不含敏感信息的字符串配合。
例如:
ConfigMap 对象定义
kind: ConfigMap
apiVersion: v1
metadata:
creationTimestamp: 2016-02-18T19:14:38Z
name: example-config
namespace: default
data: 1
example.property.1: hello
example.property.2: world
example.property.file: |-
property.1=value-1
property.2=value-2
property.3=value-3
- 1
- 包含配置数据。
可以在 Pod 中以各种方式消耗配置数据。ConfigMap
可用于:
- 填充环境变量的值。
- 设置容器中的命令行参数。
- 填充卷中的配置文件。
用户和系统组件都可以在 ConfigMap
中存储配置数据。