Red Hat Training
A Red Hat training course is available for OpenShift Container Platform
21.2. 创建 ConfigMap
您可以使用以下命令从目录、特定文件或文字值中轻松创建 ConfigMap :
$ oc create configmap <configmap_name> [options]
以下部分涵盖了创建 ConfigMap 的不同方法。
21.2.1. 从目录创建
考虑包含一些已包含您要填充 ConfigMap 的数据的文件目录:
$ ls example-files game.properties ui.properties $ cat example-files/game.properties enemies=aliens lives=3 enemies.cheat=true enemies.cheat.level=noGoodRotten secret.code.passphrase=UUDDLRLRBABAS secret.code.allowed=true secret.code.lives=30 $ cat example-files/ui.properties color.good=purple color.bad=yellow allow.textmode=true how.nice.to.look=fairlyNice
您可以使用以下命令来创建包含此目录中每个文件内容的 ConfigMap :
$ oc create configmap game-config \
--from-file=example-files/
当 --from-file 选项指向某个目录时,该目录中的每个文件都直接用于在 ConfigMap 中填充密钥,其中键的名称是文件名称,键的值是文件的内容。
例如,上述命令会创建以下 ConfigMap :
$ oc describe configmaps game-config Name: game-config Namespace: default Labels: <none> Annotations: <none> Data game.properties: 121 bytes ui.properties: 83 bytes
您可以在映射中看到从命令中指定的目录中的文件名称创建这两个键。由于这些密钥的内容可能较大,所以 oc describe 的输出只会显示键的名称及其大小。
如果要查看键的值,您可以使用 -o 选项运行 oc get:
$ oc get configmaps game-config -o yaml
apiVersion: v1
data:
game.properties: |-
enemies=aliens
lives=3
enemies.cheat=true
enemies.cheat.level=noGoodRotten
secret.code.passphrase=UUDDLRLRBABAS
secret.code.allowed=true
secret.code.lives=30
ui.properties: |
color.good=purple
color.bad=yellow
allow.textmode=true
how.nice.to.look=fairlyNice
kind: ConfigMap
metadata:
creationTimestamp: 2016-02-18T18:34:05Z
name: game-config
namespace: default
resourceVersion: "407"-
selflink: /api/v1/namespaces/default/configmaps/game-config
uid: 30944725-d66e-11e5-8cd0-68f728db1985