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.10.4. 使用 CLI 从模板创建对象
您可以使用 CLI 来处理模板,并使用所生成的配置来创建对象。
10.4.1. 添加标签
标签 (label) 用于管理和组织所生成的对象,如 pod。模板中指定的标签应用于从模板生成的每个对象。
流程
- 从以下命令行在模板中添加标签: - oc process -f <filename> -l name=otherLabel - $ oc process -f <filename> -l name=otherLabel- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
10.4.2. 列出参数
					模板的 parameter 部分列出了可覆盖的参数列表。
				
流程
- 您可使用以下命令并指定要用的文件通过 CLI 列出参数: - oc process --parameters -f <filename> - $ oc process --parameters -f <filename>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 或者,如果模板已上传: - oc process --parameters -n <project> <template_name> - $ oc process --parameters -n <project> <template_name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 例如,下面显示了在默认 - openshift项目中列出其中一个快速启动模板的参数时的输出:- oc process --parameters -n openshift rails-postgresql-example - $ oc process --parameters -n openshift rails-postgresql-example- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 输出示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 该输出标识了在处理模板时使用类似正则表达式的生成器生成的几个参数。 
10.4.3. 生成对象列表
您可以使用 CLI 来处理定义模板的文件,以便将对象列表返回到标准输出。
流程
- 处理定义模板的文件进以将对象列表返回到标准输出: - oc process -f <filename> - $ oc process -f <filename>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 或者,如果模板已上传到当前项目: - oc process <template_name> - $ oc process <template_name>- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 通过处理模板并将输出传送至 - oc create来从模板创建对象:- oc process -f <filename> | oc create -f - - $ oc process -f <filename> | oc create -f -- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 或者,如果模板已上传到当前项目: - oc process <template> | oc create -f - - $ oc process <template> | oc create -f -- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 您可以为每个要覆盖的 - <name>=<value>对添加- -p选项,以覆盖文件中定义的任何参数值。参数引用可能会出现在模板项目内的任何文本字段中。- 例如,在以下部分中,模板的 - POSTGRESQL_USER和- POSTGRESQL_DATABASE参数被覆盖,以输出带有自定义环境变量的配置:- 从模板创建对象列表 - oc process -f my-rails-postgresql \ -p POSTGRESQL_USER=bob \ -p POSTGRESQL_DATABASE=mydatabase- $ oc process -f my-rails-postgresql \ -p POSTGRESQL_USER=bob \ -p POSTGRESQL_DATABASE=mydatabase- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- JSON 文件可重定向到文件,也可直接应用,而无需通过将已处理的输出传送到 - oc create命令来上传模板:- oc process -f my-rails-postgresql \ -p POSTGRESQL_USER=bob \ -p POSTGRESQL_DATABASE=mydatabase \ | oc create -f -- $ oc process -f my-rails-postgresql \ -p POSTGRESQL_USER=bob \ -p POSTGRESQL_DATABASE=mydatabase \ | oc create -f -- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 如有大量参数,可将其保存到文件中,然后将此文件传递到 - oc process:- cat postgres.env POSTGRESQL_USER=bob POSTGRESQL_DATABASE=mydatabase - $ cat postgres.env POSTGRESQL_USER=bob POSTGRESQL_DATABASE=mydatabase- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - oc process -f my-rails-postgresql --param-file=postgres.env - $ oc process -f my-rails-postgresql --param-file=postgres.env- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 此外,您还可使用 - "-"作为- --param-file的参数,从标准输入中读取环境:- sed s/bob/alice/ postgres.env | oc process -f my-rails-postgresql --param-file=- - $ sed s/bob/alice/ postgres.env | oc process -f my-rails-postgresql --param-file=-- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow