跳至主要内容

关于 GitHub 托管运行器上的私有网络

您可以将 GitHub 托管运行器连接到私有网络上的资源,包括包注册表、密钥管理器和其他内部服务。

关于 GitHub 托管运行器网络

默认情况下,GitHub 托管运行器可以访问公共互联网。但是,您可能还需要这些运行器访问私有网络上的资源,例如包注册表、密钥管理器或其他内部服务。

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

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

使用带有 OIDC 的 API 网关

使用 GitHub Actions,您可以使用 OpenID Connect (OIDC) 令牌在 GitHub Actions 之外验证您的工作流程。有关更多信息,请参阅“使用带有 OIDC 的 API 网关”。

使用 WireGuard 创建网络覆盖

如果您不想为 API 网关维护单独的基础设施,可以通过在两个地方运行 WireGuard,在您的运行器和私有网络中的服务之间创建覆盖网络。有关更多信息,请参阅“使用 WireGuard 创建网络覆盖”。

使用 Azure 虚拟网络 (VNET)

您可以在 Azure VNET 中使用 GitHub 托管的运行器。这使您能够使用 GitHub 管理的基础设施进行 CI/CD,同时为您提供对运行器网络策略的完全控制。有关 Azure VNET 的更多信息,请参阅 Azure 文档中的 什么是 Azure 虚拟网络?

使用 GitHub 团队计划的组织所有者可以在组织级别为 GitHub 托管的运行器配置 Azure 私有网络。有关更多信息,请参阅“关于组织中 GitHub 托管的运行器的 Azure 私有网络”。