Skip to main content

管理企业中 Dependabot 更新的自托管运行器

可以为 your GitHub Enterprise Server instance 创建专用运行器,Dependabot 使用它来创建拉取请求,以帮助保护和维护企业存储库中使用的依赖项。

Note: Dependabot security and version updates are currently in private beta and subject to change. Please contact your account management team for instructions on enabling Dependabot updates.

关于 Dependabot updates 的自托管运行器

可以通过设置 Dependabot 安全性和版本更新来帮助 your GitHub Enterprise Server instance 的用户创建和维护安全代码。 借助 Dependabot updates,开发人员可以配置存储库,以便其依赖项自动更新并保持安全性。 有关详细信息,请参阅“为企业启用 Dependabot”。

要在 your GitHub Enterprise Server instance 上使用 Dependabot updates,必须配置自托管运行器来创建将更新依赖项的拉取请求。

先决条件

在为 Dependabot updates 配置自托管运行器之前,必须:

为 Dependabot updates 配置自托管运行器

将 your GitHub Enterprise Server instance 配置为使用 GitHub Actions 后,需要为 Dependabot updates 添加自托管运行器。

Dependabot 运行器的系统要求

用于 Dependabot 运行器的任何 VM 都必须满足自托管运行器的要求。 此外,它们还必须满足以下要求。

  • Linux 操作系统
  • 已安装 Git
  • 安装有运行器用户访问权限的 Docker:
    • 建议在无根模式下安装 Docker,并将运行器配置为在没有 root 特权的情况下访问 Docker。
    • 或者,安装 Docker 并授予运行器用户提升的权限来运行 Docker。

CPU 和内存要求将取决于在给定 VM 上部署的并发运行器的数量。 作为指导,我们已在一台 2 CPU 8GB 的计算机上成功设置了 20 个运行器,但最终,CPU 和内存要求将在很大程度上取决于正在更新的存储库。 某些生态系统需要比其他生态系统更多的资源。

如果在 VM 上指定了 14 个以上的并发运行器,则还必须更新 Docker /etc/docker/daemon.json 配置,以增加 Docker 可以创建的默认网络数。

{
  "default-address-pools": [
    {"base":"10.10.0.0/16","size":24}
  ]
}

Dependabot 运行器的网络要求

Dependabot 运行器需要访问公共 Internet、GitHub.com 以及将在 Dependabot 更新中使用的任何内部注册表。 为了最大程度地降低内部网络的风险,应该限制虚拟机 (VM) 对内部网络的访问。 如果运行器下载了一个被劫持的依赖项,这将减少内部系统损坏的可能性。

为 Dependabot 添加自托管运行器

  1. 在存储库、组织或企业帐户级别预配自托管运行器。 有关自托管运行器的信息,请参阅“关于自托管运行器”和“添加自托管运行器”。

  2. 按照上述要求设置自托管运行器。 例如,在运行 Ubuntu 20.04 的 VM 上,你可以:

  3. dependabot 标签分配给希望 Dependabot 使用的每个运行器。 有关详细信息,请参阅“将标签与自托管运行器配合使用”。

  4. (可选)允许 Dependabot 触发的工作流使用只读权限以外的权限,并有权访问通常可用的任何机密。 有关详细信息,请参阅排查企业 GitHub Actions 问题