This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.15.2. 创建 ConfigMap
您可以使用以下命令从目录、特定文件或文字值创建 ConfigMap。
流程
- 创建 ConfigMap:
oc create configmap <configmap_name> [options]
$ oc create configmap <configmap_name> [options]
15.2.1. 从目录创建 ConfigMap 复制链接链接已复制到粘贴板!
您可以从目录中创建 ConfigMap。此方法允许您使用目录中的多个文件来创建 ConfigMap。
流程
以下示例流程概述了如何从目录中创建 ConfigMap。
从包含一些已包含您要填充 ConfigMap 的数据的文件目录开始:
ls example-files
$ ls example-files
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
game.properties ui.properties
game.properties ui.properties
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat example-files/game.properties
$ cat example-files/game.properties
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat example-files/ui.properties
$ cat example-files/ui.properties
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
color.good=purple color.bad=yellow allow.textmode=true how.nice.to.look=fairlyNice
color.good=purple color.bad=yellow allow.textmode=true how.nice.to.look=fairlyNice
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输入以下命令,创建一个 ConfigMap,包含此目录中每个文件的内容:
oc create configmap game-config \ --from-file=example-files/
$ oc create configmap game-config \ --from-file=example-files/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当
--from-file
选项指向某个目录时,该目录中的每个文件都直接用于在 ConfigMap 中填充密钥,其中键的名称是文件名称,键的值是文件的内容。例如,上一命令会创建以下 ConfigMap:
oc describe configmaps game-config
$ oc describe configmaps game-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 您可以看到,映射中的两个键都是从命令中指定的目录中的文件名创建的。因为这些键的内容可能较大,所以
oc describe
的输出只会显示键的名称及其大小。使用带有
-o
选项的oc get
命令以查看键的值:oc get configmaps game-config -o yaml
$ oc get configmaps game-config -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
15.2.2. 从一个文件创建 ConfigMap 复制链接链接已复制到粘贴板!
您可以从文件创建 ConfigMap。
流程
以下示例流程概述了如何从文件创建 ConfigMap。
如果从文件创建 configmap,您可以在不会破坏非 UTF8 数据的项中包含非 UTF8 的数据。OpenShift Container Platform 检测到二进制文件,并将该文件编码为 MIME
。在服务器上,MIME
有效负载被解码并存储而不会损坏数据。
您可以多次将 --from-file
选项传递给 CLI。以下示例生成与从目录创建示例相同的结果。
创建 ConfigMap 指定特定文件:
oc create configmap game-config-2 \ --from-file=example-files/game.properties \ --from-file=example-files/ui.properties
$ oc create configmap game-config-2 \ --from-file=example-files/game.properties \ --from-file=example-files/ui.properties
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证结果:
oc get configmaps game-config-2 -o yaml
$ oc get configmaps game-config-2 -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
您可以为从文件中导入的内容在 ConfigMap 中指定要设置的键。这可以通过向 --from-file
选项传递 key=value
表达式来设置。例如:
创建 ConfigMap 指定键值对:
oc create configmap game-config-3 \ --from-file=game-special-key=example-files/game.properties
$ oc create configmap game-config-3 \ --from-file=game-special-key=example-files/game.properties
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证结果:
oc get configmaps game-config-3 -o yaml
$ oc get configmaps game-config-3 -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 这是您在前面的步骤中设置的密钥。
15.2.3. 使用字面值创建 ConfigMap 复制链接链接已复制到粘贴板!
您可以为 ConfigMap 提供字面值。
流程
--from-literal
选项使用 key=value
语法,允许直接在命令行中提供字面值。
创建指定字面值的 ConfigMap:
oc create configmap special-config \ --from-literal=special.how=very \ --from-literal=special.type=charm
$ oc create configmap special-config \ --from-literal=special.how=very \ --from-literal=special.type=charm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证结果:
oc get configmaps special-config -o yaml
$ oc get configmaps special-config -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow