关于 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 私有网络”。