7.3. 构建触发器


存储库构建也可由事件自动触发,如推送到 SCM(GitHub、BitBucket 或 GitLab)或 调用 Webhook

7.3.1. 创建新构建触发器

要设置构建触发器,点 Builds 视图页面上的 Create Build Trigger 按钮,并按照对话框的说明进行操作。您需要向您的存储库授予 Red Hat Quay 访问权限,以设置触发器,并且您的帐户 需要 SCM 存储库 的 admin 访问权限

7.3.2. 手动触发构建触发器

要手动触发构建触发器,请单击构建触发器旁边的图标,然后选择 Run Now

7.3.3. 构建上下文

使用 Docker 构建镜像时,指定目录使其成为构建上下文。对于手动构建和构建触发器,这包括 true,因为 Red Hat Quay 执行的构建与您自己的机器上运行 docker 构建 没有不同。

如果未指定,Red Hat Quay 构建上下文始终是来自构建设置所指定的子目录,并将回退到构建源的根目录。触发构建时,Red Hat Quay 构建 worker 会将 git 存储库克隆到 worker 机器,并在执行构建前输入构建上下文。

对于基于 tar 归档的构建,构建工作程序提取存档并输入构建上下文。例如:

example
├── .git
├── Dockerfile
├── file
└── subdir
    └── Dockerfile

想象上面的例子是 GitHub 存储库的目录结构,名为"example"。如果在构建触发器设置中或手动启动构建时没有指定子目录,则构建将在示例目录中操作。

如果将 subdir 指定为构建触发器设置中的子目录,则只有其中的 Dockerfile 才可以出现在构建中。这意味着您无法在 Dockerfile 中使用 ADD 命令来添加 文件,因为它不在构建上下文之外。

与 Docker Hub 不同,Dockerfile 是 Red Hat Quay 上的构建上下文的一部分。因此,它不能出现在 .dockerignore 文件中。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

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

让开源更具包容性

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

關於紅帽

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

© 2024 Red Hat, Inc.