Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

31.2.2. 手动设置全局构建默认值

配置 BuildDefaults 插件:

  1. 在 master 节点上的 /etc/origin/master/master-config.yaml 文件中添加一个配置:

    admissionConfig:
      pluginConfig:
        BuildDefaults:
          configuration:
            apiVersion: v1
            kind: BuildDefaultsConfig
            gitHTTPProxy: http://my.proxy:8080 1
            gitHTTPSProxy: https://my.proxy:8443 2
            gitNoProxy: somedomain.com, otherdomain.com 3
            env:
            - name: HTTP_PROXY 4
              value: http://my.proxy:8080
            - name: HTTPS_PROXY 5
              value: https://my.proxy:8443
            - name: BUILD_LOGLEVEL 6
              value: 4
            - name: CUSTOM_VAR 7
              value: custom_value
            imageLabels:
            - name: url 8
              value: https://containers.example.org
            - name: vendor
              value: ExampleCorp Ltd.
            nodeSelector: 9
              key1: value1
              key2: value2
            annotations: 10
              key1: value1
              key2: value2
            resources: 11
              requests:
                cpu: "100m"
                memory: "256Mi"
              limits:
                cpu: "100m"
                memory: "256Mi"
    1
    设置在从 Git 存储库克隆源代码时要使用的 HTTP 代理。
    2
    设置 HTTPS 代理,以在从 Git 存储库克隆源代码时使用。
    3
    设置不使用代理的域列表。
    4
    默认环境变量,用于设置在构建期间使用的 HTTP 代理。这可用于在 assemble 和构建阶段下载依赖项。
    5
    默认环境变量,用于设置在构建期间使用的 HTTP 代理。这可用于在 assemble 和构建阶段下载依赖项。
    6
    在构建期间设置构建日志级别的默认环境变量。
    7
    将添加到每个构建的额外默认环境变量。
    8
    要应用到每个构建的镜像的标签。用户可以在 BuildConfig 中覆盖它们。
    9
    构建 pod 仅在带有 key1=value2key2=value2 标签的节点上运行。用户可以为其构建定义一组不同的 nodeSelectors,在这种情况下,这些值将被忽略。
    10
    构建 pod 将将这些注解添加到其中。
    11
    如果 BuildConfig 没有定义相关资源,请将默认资源设置为构建 pod。
  2. 重启 master 服务以使更改生效:

    # master-restart api
    # master-restart controllers