第 4 章 Build [config.openshift.io/v1]


描述

build 配置整个集群的 OpenShift 构建的行为。这包括可在 BuildConfig 对象中覆盖的默认设置,以及应用到所有构建的覆盖。

规范名称为 "cluster"

兼容性级别 1:在主发行版本中至少提供 12 个月或 3 个次版本(以更长的时间为准)。

类型
object
必填
  • spec

4.1. 规格

Expand
属性类型描述

apiVersion

string

APIVersion 定义对象的这个表示法的版本化的 schema。服务器应该将识别的模式转换为最新的内部值,并可拒绝未识别的值。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

kind

string

kind 是一个字符串值,代表此对象所代表的 REST 资源。服务器可以从客户端向其提交请求的端点推断。无法更新。采用驼峰拼写法 (CamelCase)。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

metadata

ObjectMeta

标准对象元数据。更多信息: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

spec

object

spec 包含构建控制器配置的 user-settable 值

4.1.1. .spec

描述
spec 包含构建控制器配置的 user-settable 值
类型
object
Expand
属性类型描述

additionalTrustedCA

object

additionalTrustedCA 是对包含额外 CA 的 ConfigMap 的引用,该 CA 应该信任在构建期间进行镜像推送和拉取。此配置映射的命名空间是 openshift-config。

DEPRECATED :应在 image.config.openshift.io/cluster 上设置镜像拉取(pull)和推送的额外 CA。

buildDefaults

object

buildDefaults 控制构建的默认信息

buildOverrides

object

buildOverrides 控制构建的覆盖设置

4.1.2. .spec.additionalTrustedCA

描述

additionalTrustedCA 是对包含额外 CA 的 ConfigMap 的引用,该 CA 应该信任在构建期间进行镜像推送和拉取。此配置映射的命名空间是 openshift-config。

DEPRECATED :应在 image.config.openshift.io/cluster 上设置镜像拉取(pull)和推送的额外 CA。

类型
object
必填
  • name
Expand
属性类型描述

name

字符串

name 是引用的配置映射的 metadata.name

4.1.3. .spec.buildDefaults

描述
buildDefaults 控制构建的默认信息
类型
object
Expand
属性类型描述

defaultProxy

object

defaultProxy 包含所有构建操作的默认代理设置,包括镜像拉取/推送和源下载。

通过在构建配置的策略中设置 HTTP_PROXYHTTPS_PROXYNO_PROXY 环境变量,可以覆盖值。

env

数组

env 是一组默认环境变量,如果构建中不存在指定变量,则会应用到构建

env[]

对象

EnvVar 代表容器中存在的环境变量。

gitProxy

object

gitProxy 仅包含 git 操作的代理设置。如果设置,这将覆盖所有 git 命令的任何代理设置,如 git clone。

此处未设置的值将从 DefaultProxy 继承。

imageLabels

数组

imageLabels 是应用到生成的镜像的 docker 标签列表。用户可以通过在其 Build/BuildConfig 中提供名称相同的标签来覆盖默认标签。

imageLabels[]

对象

 

资源

object

资源定义执行构建的资源要求。

4.1.4. .spec.buildDefaults.defaultProxy

描述

defaultProxy 包含所有构建操作的默认代理设置,包括镜像拉取/推送和源下载。

通过在构建配置的策略中设置 HTTP_PROXYHTTPS_PROXYNO_PROXY 环境变量,可以覆盖值。

类型
object
Expand
属性类型描述

httpProxy

字符串

httpProxy 是 HTTP 请求的代理 URL。空表示未设置,不会导致 env var。

httpsProxy

字符串

httpsProxy 是 HTTPS 请求的代理 URL。空表示未设置,不会导致 env var。

noProxy

字符串

noProxy 是不应使用代理的主机名和/或 CIDR 和/或 IP 的逗号分隔列表。空表示未设置,不会导致 env var。

readinessEndpoints

数组(字符串)

readinessEndpoints 是用于验证代理的就绪状态的端点列表。

trustedCA

对象

trustedCA 是对包含 CA 证书捆绑包的 ConfigMap 的引用。trustedCA 字段应当仅由代理验证器使用。验证器负责从所需的键 "ca-bundle.crt" 中读取证书捆绑包,将其与系统默认信任捆绑包合并,并在 "openshift-config-managed" 命名空间中写入名为 "trusted-ca-bundle" 的 ConfigMap 中。希望进行代理连接的客户端必须将 trusted-ca-bundle 用于代理的所有 HTTPS 请求,并将 trusted-ca-bundle 用于非代理 HTTPS 请求。

被 trustedCA 引用的 ConfigMap 的命名空间为 "openshift-config"。以下是一个 ConfigMap 示例(在 yaml 中):

apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: | -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----

4.1.5. .spec.buildDefaults.defaultProxy.trustedCA

描述

trustedCA 是对包含 CA 证书捆绑包的 ConfigMap 的引用。trustedCA 字段应当仅由代理验证器使用。验证器负责从所需的键 "ca-bundle.crt" 中读取证书捆绑包,将其与系统默认信任捆绑包合并,并在 "openshift-config-managed" 命名空间中写入名为 "trusted-ca-bundle" 的 ConfigMap 中。希望进行代理连接的客户端必须将 trusted-ca-bundle 用于代理的所有 HTTPS 请求,并将 trusted-ca-bundle 用于非代理 HTTPS 请求。

被 trustedCA 引用的 ConfigMap 的命名空间为 "openshift-config"。以下是一个 ConfigMap 示例(在 yaml 中):

apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----

类型
object
必填
  • name
Expand
属性类型描述

name

字符串

name 是引用的配置映射的 metadata.name

4.1.6. .spec.buildDefaults.env

描述
env 是一组默认环境变量,如果构建中不存在指定变量,则会应用到构建
类型
array

4.1.7. .spec.buildDefaults.env[]

描述
EnvVar 代表容器中存在的环境变量。
类型
object
必填
  • name
Expand
属性类型描述

name

字符串

环境变量的名称。必须是 C_IDENTIFIER。

value

字符串

变量引用 $(VAR_NAME)使用容器中之前定义的环境变量以及任何服务环境变量进行扩展。如果无法解析变量,则输入字符串中的引用将保持不变。双引号被缩减为一个单个 $,它用于转义 $(VAR_NAME)语法:即 " (VAR_NAME) " 将生成字符串 "$(VAR_NAME) "。转义的引用永远不会扩展,无论变量是否存在。默认为 ""。

valueFrom

对象

环境变量的值的源。如果值不为空,则无法使用。

4.1.8. .spec.buildDefaults.env[].valueFrom

描述
环境变量的值的源。如果值不为空,则无法使用。
类型
object
Expand
属性类型描述

configMapKeyRef

对象

选择 ConfigMap 的键。

fieldRef

对象

选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.

resourceFieldRef

对象

选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。

secretKeyRef

对象

在 pod 命名空间中选择 secret 的键

4.1.9. .spec.buildDefaults.env[].valueFrom.configMapKeyRef

描述
选择 ConfigMap 的键。
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要选择的密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否必须定义 ConfigMap 还是其键

4.1.10. .spec.buildDefaults.env[].valueFrom.fieldRef

描述
选择 pod 的字段:支持 metadata.name、metadata.namespace、metadata.labels['<KEY>'], metadata.annotations['<KEY>'], spec.nodeName, spec.serviceAccountName, status.hostIP, status.podIP, status.podIPs.
类型
object
必填
  • fieldPath
Expand
属性类型描述

apiVersion

字符串

模式的版本是按术语编写的 FieldPath,默认为 "v1"。

fieldPath

字符串

在指定 API 版本中选择的字段路径。

描述
选择容器的资源:当前仅支持资源限值和请求(limits.cpu, limits.memory, limits.ephemeral-storage, requests.cpu, requests.memory and requests.ephemeral-storage)。
类型
object
必填
  • resource
Expand
属性类型描述

containerName

字符串

容器名称:卷需要,对于 env vars是可选的

divisor

integer-or-string

指定公开资源的输出格式,默认为 "1"

resource

字符串

必需:要选择的资源

4.1.12. .spec.buildDefaults.env[].valueFrom.secretKeyRef

描述
在 pod 命名空间中选择 secret 的键
类型
object
必填
  • key
Expand
属性类型描述

key

字符串

要从中选择的 secret 的密钥。必须是一个有效的 secret 密钥。

name

字符串

引用的名称。有效地需要此字段,但因为允许向后兼容为空。这里具有空值的此类实例几乎是错误的。更多信息: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names

optional

布尔值

指定是否需要定义 Secret 还是其密钥

4.1.13. .spec.buildDefaults.gitProxy

描述

gitProxy 仅包含 git 操作的代理设置。如果设置,这将覆盖所有 git 命令的任何代理设置,如 git clone。

此处未设置的值将从 DefaultProxy 继承。

类型
object
Expand
属性类型描述

httpProxy

字符串

httpProxy 是 HTTP 请求的代理 URL。空表示未设置,不会导致 env var。

httpsProxy

字符串

httpsProxy 是 HTTPS 请求的代理 URL。空表示未设置,不会导致 env var。

noProxy

字符串

noProxy 是不应使用代理的主机名和/或 CIDR 和/或 IP 的逗号分隔列表。空表示未设置,不会导致 env var。

readinessEndpoints

数组(字符串)

readinessEndpoints 是用于验证代理的就绪状态的端点列表。

trustedCA

对象

trustedCA 是对包含 CA 证书捆绑包的 ConfigMap 的引用。trustedCA 字段应当仅由代理验证器使用。验证器负责从所需的键 "ca-bundle.crt" 中读取证书捆绑包,将其与系统默认信任捆绑包合并,并在 "openshift-config-managed" 命名空间中写入名为 "trusted-ca-bundle" 的 ConfigMap 中。希望进行代理连接的客户端必须将 trusted-ca-bundle 用于代理的所有 HTTPS 请求,并将 trusted-ca-bundle 用于非代理 HTTPS 请求。

被 trustedCA 引用的 ConfigMap 的命名空间为 "openshift-config"。以下是一个 ConfigMap 示例(在 yaml 中):

apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: | -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----

4.1.14. .spec.buildDefaults.gitProxy.trustedCA

描述

trustedCA 是对包含 CA 证书捆绑包的 ConfigMap 的引用。trustedCA 字段应当仅由代理验证器使用。验证器负责从所需的键 "ca-bundle.crt" 中读取证书捆绑包,将其与系统默认信任捆绑包合并,并在 "openshift-config-managed" 命名空间中写入名为 "trusted-ca-bundle" 的 ConfigMap 中。希望进行代理连接的客户端必须将 trusted-ca-bundle 用于代理的所有 HTTPS 请求,并将 trusted-ca-bundle 用于非代理 HTTPS 请求。

被 trustedCA 引用的 ConfigMap 的命名空间为 "openshift-config"。以下是一个 ConfigMap 示例(在 yaml 中):

apiVersion: v1 kind: ConfigMap metadata: name: user-ca-bundle namespace: openshift-config data: ca-bundle.crt: \| -----BEGIN CERTIFICATE----- Custom CA certificate bundle. -----END CERTIFICATE-----

类型
object
必填
  • name
Expand
属性类型描述

name

字符串

name 是引用的配置映射的 metadata.name

4.1.15. .spec.buildDefaults.imageLabels

描述
imageLabels 是应用到生成的镜像的 docker 标签列表。用户可以通过在其 Build/BuildConfig 中提供名称相同的标签来覆盖默认标签。
类型
array

4.1.16. .spec.buildDefaults.imageLabels[]

描述
类型
object
Expand
属性类型描述

name

string

name 定义标签的名称。它必须具有非零长度。

value

string

value 定义标签的字面值。

4.1.17. .spec.buildDefaults.resources

描述
资源定义执行构建的资源要求。
类型
object
Expand
属性类型描述

claims

数组

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

claims[]

object

ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。

limits

integer-or-string

限制描述了允许的最大计算资源量。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

requests

integer-or-string

Requests 描述了所需的最少计算资源。如果容器省略了 Requests,则默认为 Limits (如果明确指定),否则默认为实现定义的值。请求不能超过限值。更多信息: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/

4.1.18. .spec.buildDefaults.resources.claims

描述

claim 列出此容器使用的 spec.resourceClaims 中定义的资源名称。

这是一个 alpha 字段,需要启用 DynamicResourceAllocation 功能门。

此字段不可变。它只能为容器设置。

类型
数组

4.1.19. .spec.buildDefaults.resources.claims[]

描述
ResourceClaim 引用 PodSpec.ResourceClaims 中的一个条目。
类型
object
必填
  • name
Expand
属性类型描述

name

string

name 必须与使用此字段的 Pod 的 pod.spec.resourceClaims 中的一个条目的名称匹配。它允许容器内部使用该资源。

Request (请求)

string

在引用的声明中为请求选择请求的名称。如果为空,则提供声明中的所有内容,否则仅提供此请求的结果。

4.1.20. .spec.buildOverrides

描述
buildOverrides 控制构建的覆盖设置
类型
object
Expand
属性类型描述

forcePull

布尔值

forcePull 覆盖(如果设置了)构建中的等效值,即 false 会禁用对所有构建的强制拉取,true 会独立于每个构建指定其自身的强制拉取

imageLabels

数组

imageLabels 是应用到生成的镜像的 docker 标签列表。如果用户在其 Build/BuildConfig 中提供了与此列表中名称相同的标签,则用户的标签将被覆盖。

imageLabels[]

对象

 

nodeSelector

对象(字符串)

nodeSelector 是一个选择器,必须为 true 才能使构建 pod 适合节点

容限(tolerations)

数组

tolerations (toleration)是一个 Tolerations 列表,它将覆盖构建 pod 上任何现有的容限集。

tolerations[]

对象

此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。

4.1.21. .spec.buildOverrides.imageLabels

描述
imageLabels 是应用到生成的镜像的 docker 标签列表。如果用户在其 Build/BuildConfig 中提供了与此列表中名称相同的标签,则用户的标签将被覆盖。
类型
array

4.1.22. .spec.buildOverrides.imageLabels[]

描述
类型
object
Expand
属性类型描述

name

string

name 定义标签的名称。它必须具有非零长度。

value

string

value 定义标签的字面值。

4.1.23. .spec.buildOverrides.tolerations

描述
tolerations (toleration)是一个 Tolerations 列表,它将覆盖构建 pod 上任何现有的容限集。
类型
array

4.1.24. .spec.buildOverrides.tolerations[]

描述
此 Toleration 附加到 pod,以使用匹配的 operator <operator> 容许与 triple <key,value,effect> 匹配的任何污点。
类型
object
Expand
属性类型描述

effect

字符串

effect 表示要匹配的污点效果。空意味着匹配所有污点效果。指定后,允许的值为 NoSchedule,PreferNoSchedule 和 NoExecute。

key

字符串

key 是容限应用到的污点键。empty 表示与所有污点键匹配。如果键为空,则必须存在运算符;组合意味着匹配所有值和所有键。

operator

字符串

Operator 代表键与值的关系。有效的运算符是 Exists 和 Equal。默认值为 Equal。exists 等同于值的通配符,以便 pod 可以容忍特定类别的所有污点。

tolerationSeconds

整数

tolerationSeconds 代表容限的期间(必须生效 NoExecute,否则此字段将被忽略)可以容忍污点。默认情况下,它不会被设置,这意味着容许任何污点(不要驱除)。零值和负值将被视为 0 (立即删除)。

value

字符串

value 是容限匹配的污点值。如果运算符是 Exists,则该值应该为空,否则仅是一个常规字符串。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat