Skip to main content

关于使用 GitHub 托管的运行器进行专用网络联网

可以将 GitHub 托管的运行器连接到专用网络上的资源,包括包注册表、机密管理器和其他本地服务。

关于 GitHub 托管的运行器网络

默认情况下,GitHub 托管的运行器有权访问公共 Internet。 但是,你可能还希望这些运行器访问专用网络上的资源,例如包注册表、机密管理器或其他本地服务。

GitHub 托管的运行器已在所有 GitHub 客户之间共享。 但是,使用专用网络,可以将托管的运行器配置为专门用于在运行工作流时连接到专用网络和资源。

可以采用几种不同的方法来配置此访问,每个方法都有不同的优缺点。

将 API 网关与 OIDC 配合使用

借助 GitHub Actions,可以使用 OpenID Connect (OIDC) 令牌对 GitHub Actions 之外的工作流进行身份验证。 有关详细信息,请参阅“将 API 网关与 OIDC 配合使用”。

使用 WireGuard 创建网络覆盖

如果不想为 API 网关维护单独的基础结构,可以通过在专用网络的运行器和服务中运行 WireGuard,在这两者之间创建覆盖网络。 有关详细信息,请参阅“使用 WireGuard 创建网络覆盖”。

使用 Azure 虚拟网络 (VNET)

可在 Azure Vnet 中使用 GitHub 托管的运行器。 这样就将 GitHub 托管基础结构用于 CI/CD,同时取得对运行器网络策略的完全控制。 有关 Azure VNET 的详细信息,请参阅 Azure 文档中的什么是 Azure 虚拟网络?

使用 GitHub Team 计划的组织所有者可以在组织级别上为 GitHub 托管的运行器配置 Azure 专用网络。 有关详细信息,请参阅“关于组织中 GitHub 托管的运行器的 Azure 专用网络”。