10.9. 构建和自动化


本节概述了在 Red Hat Quay 中管理自动构建的配置选项。这些设置控制如何触发、处理和存储 Dockerfile 构建,以及管理和访问构建日志的方式。

您可以使用这些字段来:

  • 启用或禁用源存储库中的自动构建。
  • 配置构建管理器的行为和资源管理。
  • 控制对构建日志的访问,并保留构建日志,以满足审核或调试的目的。

这些选项可帮助您简化 CI/CD 管道,强制执行构建策略,并保持对 registry 中的构建历史记录的可见性。

其他资源

10.9.1. Dockerfile 构建触发器字段

本节介绍了用于从 Dockerfile 和源代码存储库中在 Red Hat Quay 中启用和管理自动构建的配置字段。这些字段允许您定义构建行为,启用或禁用 GitHub、GitLab 和 Bitbucket 触发器的支持,并为每个 SCM 提供程序提供 OAuth 凭证和端点。

表 10.32. Dockerfile 构建支持
字段类型描述

FEATURE_BUILD_SUPPORT

布尔值

是否支持 Dockerfile 构建。

Default: False

SUCCESSIVE_TRIGGER_FAILURE_DISABLE_THRESHOLD

Number

如果没有设置 None,则自动禁用构建触发器前可能会出现的连续失败数量。

默认: 100

SUCCESSIVE_TRIGGER_INTERNAL_ERROR_DISABLE_THRESHOLD

Number

如果没有设置 None,则在自动禁用构建触发器前可能会出现连续的内部错误数量

默认: 5

Dockerfile 构建支持示例 YAML

# ...
FEATURE_BUILD_SUPPORT: true
SUCCESSIVE_TRIGGER_FAILURE_DISABLE_THRESHOLD: 100
SUCCESSIVE_TRIGGER_INTERNAL_ERROR_DISABLE_THRESHOLD: 5
# ...

表 10.33. GitHub 构建触发器
字段类型描述

FEATURE_GITHUB_BUILD

布尔值

是否支持 GitHub 构建触发器。

Default: False

GITHUB_TRIGGER_CONFIG

对象

使用 GitHub Enterprise 进行构建触发器的配置。

   .GITHUB_ENDPOINT
(Required)

字符串

GitHub Enterprise 的端点。

示例 :https://github.com/

   .API_ENDPOINT

字符串

要使用的 GitHub Enterprise API 的端点。对于 github.com,必须覆盖。

示例:https://api.github.com/

   .CLIENT_ID
   (Required)

字符串

此 Red Hat Quay 实例的注册客户端 ID;这不能与 GITHUB_LOGIN_CONFIG 共享。

   .CLIENT_SECRET
(Required)

字符串

此 Red Hat Quay 实例的注册客户端 secret。

GitHub 构建触发器 YAML 示例

# ...
FEATURE_GITHUB_BUILD: true
GITHUB_TRIGGER_CONFIG:
  GITHUB_ENDPOINT: https://github.com/
  API_ENDPOINT: https://api.github.com/
  CLIENT_ID: your-client-id
  CLIENT_SECRET: your-client-secret
# ...

表 10.34. Bitbucket 构建触发器
字段类型描述

FEATURE_BITBUCKET_BUILD

布尔值

是否支持 Bitbucket 构建触发器。

Default: False

BITBUCKET_TRIGGER_CONFIG

对象

将 BitBucket 用于构建触发器的配置。

   .CONSUMER_KEY
(Required)

字符串

此 Red Hat Quay 实例注册的消费者密钥(客户端 ID)。

   .CONSUMER_SECRET
   (Required)

字符串

此 Red Hat Quay 实例注册的消费者 secret (客户端 secret)。

Bitbucket 构建会触发 YAML 示例

# ...
FEATURE_BITBUCKET_BUILD: true
BITBUCKET_TRIGGER_CONFIG:
  CONSUMER_KEY: <your_consumer_key>
  CONSUMER_SECRET: <your-consumer-secret>
# ...

表 10.35. GitLab 构建触发器
字段类型描述

FEATURE_GITLAB_BUILD

布尔值

是否支持 GitLab 构建触发器。

Default: False

GITLAB_TRIGGER_CONFIG

对象

使用 Gitlab 进行构建触发器的配置。

   .GITLAB_ENDPOINT
(Required)

字符串

运行 Gitlab Enterprise 的端点。

   .CLIENT_ID
   (Required)

字符串

此 Red Hat Quay 实例的注册客户端 ID。

   .CLIENT_SECRET
(Required)

字符串

此 Red Hat Quay 实例的注册客户端 secret。

GitLab 构建会触发 YAML 示例

# ...
FEATURE_GITLAB_BUILD: true
GITLAB_TRIGGER_CONFIG:
  GITLAB_ENDPOINT: https://gitlab.example.com/
  CLIENT_ID: <your_gitlab_client_id>
  CLIENT_SECRET: <your_gitlab_client_secret>
# ...

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

關於紅帽

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

让开源更具包容性

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

关于红帽文档

Legal Notice

Theme

© 2026 Red Hat
返回顶部