Skip to main content

GitHub Actions计费

了解如何计算您对GitHub Actions的使用量,以便与免费津贴进行对比,并如何支付额外的使用费用。

如何衡量GitHub Actions的使用情况

          对于**自托管运行器**以及使用标准 GitHub 托管运行器的**公共存储库**,使用 GitHub Actions 是**免费**的。 请参阅“[AUTOTITLE](/actions/writing-workflows/choosing-where-your-workflow-runs/choosing-the-runner-for-a-job#standard-github-hosted-runners-for-public-repositories)”。

对于专用存储库,每个 GitHub 帐户都会获得一定配额的免费分钟数、工件存储和缓存存储,用于 GitHub 托管运行器,具体配额取决于帐户的计划。 超出包含金额的任何使用量将计入你的帐户。

  •         **分钟:** 每个计费周期开始时,免费分钟数将重置为完整金额。 分钟使用量将计入存储库所有者,而不是触发工作流运行的人员。
    
  •         **存储:** 存储费用根据每小时使用情况累积在一个月中。 每个计费周期开始时,累积的存储费用重置为零。
    

提示

对存储库具有写入访问权限的任何人都可以运行作。 运行操作的任何费用都向仓库所有者计费。

存储计费的工作原理

          GitHub Actions 存储计费以 **每小时计票模型**运行:

* 持续计费: 存储费用根据整个月份的实际使用情况每小时产生一次 * 每月总计: 您的帐单反映的是整个月份使用的存储总量,测量单位为GB-小时。 * 包含的存储量: 您计划中的免费存储容量(例如企业计划中的 50 GB)将转换为每小时的费率以进行计费计算 * 共享存储: 操作项目、操作缓存和 GitHub Packages 存储都共享相同的共用津贴。 有关详细信息,请参阅“GitHub程序包计费”。

了解当前存储与累积存储

请务必了解你在GitHub 看到的内容与账单上显示的内容之间的差异。

  •         **当前存储:** 你现在拥有的存储量
    
  •         **累算存储:** 在整个计费周期中使用的累计存储总量(确定帐单)
    
            **删除工件时:**
    
  • 当前存储正在立即减少

  • 未来的每小时费用将停止积累

  • 当前计费周期内已累积的存储将保留在总计中,并将显示在帐单上

            **示例(30 天计费周期):** 如果将 10 GB 的项目存储 10 天,请在第 11 天删除所有项目:
    
  • 第 1-10 天:每天累积 240 GB 小时(10 GB × 24 小时)

  • 第 11 天:删除工件→当前存储降至 0 GB

  • 第 11-30 天:累积 0 GB-小时(无存储空间)

  • 您的帐单显示:共计 2,400 GB小时 (10 天 × 每天 240 GB小时)

删除工件可减少当前的存储用量并避免产生后续费用,但不会免除该存储在留存期间已产生的费用。

存储度量单位

          GitHub Actions 以二进制千兆字节(GB)为单位度量存储,其中:
  • 1 GB = 2^30 字节 = 1,073,741,824 字节

  • 这也称为吉比特(GiB)

  • 1 GB = 1,024 MB (MB)

            **计费计算使用 GB-小时:**
    
  • 1 GB-Hour = 1 GB 的存储持续 1 小时

  • 示例:将 3 GB 存储 10 天 = 720 GB-Hours(3 GB × 10 天× 24 小时)

每月账单将 GB-Hours 转换为 GB-Months,方法是将月份中的小时数除以(通常为 720 小时(30 天)。

自定义映像存储

对于 GitHub 托管的大型运行器,自定义映像的存储通过 GitHub Actions 存储计费。

自定义映像存储使用与其他 GitHub Actions 存储相同的每小时累积模型。 帐单基于一段时间内存储的图像数据量(以 GB-小时为单位)。

自定义映像的存储使用情况取决于:

  • 每个映像版本的大小
  • 保留的映像版本数
  • 每个版本存储的时长

包含 snapshot 关键字的每个成功工作流作业都会创建新的自定义映像版本。 在版本被删除或由保留策略移除之前,每个保留的版本都会占用存储空间。 有关详细信息,请参阅 使用自定义映像在企业中强制实施GitHub Actions策略

自定义映像存储基于一段时间内保留的映像数据,而不是基于运行器使用或拉取现有映像的次数。

例如:

  • 将一个 150 GB 自定义映像版本存储 24 小时将消耗 3,600 GB-小时。
  • 如果将同一映像的 4 个 150 GB 版本存储 24 小时,则会使用 14,400 GB-小时。

如何衡量使用情况的示例

  • 如果在 Linux 运行程序上运行工作流,需要 10 分钟才能完成,你将使用 10 分钟的存储库所有者津贴。 如果工作流生成一个 10 MB 的项目,你还将占用存储库所有者 10 MB 的项目存储配额。
  • 如果你运行一个通常需要 10 分钟的工作流,但它在 5 分钟后因为依赖项不可用而失败,则你将使用 5 分钟的存储库所有者限额。 如果你修复了该问题并成功重新运行了该工作流,则总共你将使用 15 分钟的存储库所有者限额。
  • 如果运行生成许多日志文件和长作业摘要的工作流,这些文件不计入存储库所有者的项目存储限额。
  • 缓存存储使用情况按每小时的峰值使用量来衡量。 每个存储库的包含使用额度为 10 GB。 对于给定的一小时,如果存储库的缓存使用率达到 15 GB,则存储库所有者将按该小时包含的 10 GB 以上 5 GB 的使用量收费。 仅当存储库缓存存储限制配置为高于包含的使用情况时,才会对存储库所有者收费。
  • 附加缓存存储每月每 GiB 收费 0.07 美元。

免费使用 GitHub Actions

以下标准运行器的使用时间、工件存储和缓存存储额度已包含在你的 GitHub 计划中。 在每个月初,帐户使用的分钟数重置为零。

计划工件存储分钟数(每月)缓存存储
GitHub Free500 MB2,00010 GB
GitHub Pro1GB3,00010 GB
组织的 GitHub Free500 MB2,00010 GB
GitHub Team2 GB3,00010 GB
GitHub Enterprise Cloud50 GB50,00010 GB

使用标准 GitHub托管运行器是免费的:

  • 在公共存储库中
  • 对于 GitHub Pages
  • 对于 Dependabot
  • 对于 GitHub Copilot代码评审 中的智能体功能 (公共预览版)

注意

  • 大型运行器始终会产生费用,即使由公共存储库使用或你的计划中有可用配额也是如此。
  • 显示的存储量与GitHub Packages共享。 这意味着你在 Actions 制品、Actions 缓存和软件包中的总存储量不能超过你计划的额度。

使用量超出包含的配额

如果你的帐户未添加有效的付款方式,则配额用尽后将无法继续使用服务。 在你设置付款方式之前,始终会阻止使用大型执行程序。

支付额外 GitHub Actions 使用费用

使用为帐户设置的 GitHub 付款方式支付超出配额的任何其他使用费用。 请参阅“管理付款和账单信息”。

对于 GitHub 托管的运行器,存储量是根据整个月工件和缓存的每小时使用量计费的。 根据当月每个运行程序类型使用的总处理时间计算分钟数。

注意

计费仪表板可能会将 Actions 使用情况显示为美元金额(“支出”),而非原始分钟数。 此金额已反映任何适用的分钟成本。

基线分钟成本

由 GitHub 托管的每种类型的运行器其每分钟成本由操作系统和处理能力决定。

例如,在 Windows 和 macOS 运行程序上运行的 GitHub 作业的成本比 Linux 运行程序上运行的作业的成本更高。

操作系统计费 SKU每分钟费率(美元)
Linux 1 核 (x64)actions_linux_slim$0.002
Linux 2 核 (x64)actions_linux$0.006
Linux 2 核 (arm64)actions_linux_arm0.005 美元
Windows 2 核 (x64)actions_windows$0.010
Windows 2 核 (arm64)actions_windows_arm$0.010
macOS 3 核或 4 核(M1 或 Intel)actions_macos$0.062

有关不同类型的运行程序每分钟费用的完整详细信息,请参阅 Actions 运行程序定价

GitHub 托管的运行器的示例分钟成本计算

例如,如果你的组织使用 GitHub Team,并且在 GitHub 托管的运行器上超出配额使用了 5,000 分钟,那么如果你使用基线 Linux 和 Windows 运行器,托管运行器的总操作分钟费用目前将为 38 美元。

  • 5,000 (3,000 Linux 和 2,000 Windows) 分钟 = 38 美元 (18 美元 + 20 美元)。
    • 3,000 分钟的 Linux 服务,每分钟 0.006 美元,总计 18 美元。
    • 2,000 个 Windows 分钟,每分钟 0.010 美元,共计 20 美元。

工件存储成本计算示例

如果在 3 月 10 天内使用 3 GB 的项目存储,在 3 月 21 天内使用 12 GB 的项目存储,则项目存储使用情况将为:

  • 3 GB x 10 天 x(每天 24 小时)= 720 GB-小时
  • 12 GB x 21 天 x(每天 24 小时)= 6,048 GB-小时
  • 720 GB-小时 + 6,048 GB-小时 = 6,768 GB-小时
  • 6,768 GB-小时 / (每月 744 小时) = 9.0967 GB-月

当月月末,GitHub 会将工件存储使用量舍入为最接近的 MB 整数。 因此,3 月的工件存储使用情况将为 9.097 GB。

注意

GitHub 在 6 到 12 小时内更新工件存储使用情况。 删除工件可释放当前存储的空间,但不会减少累积的存储用量,累积的存储用量用于计算当前计费周期的存储费用。

缓存存储成本计算示例

如果在 3 月 10 天内使用 3 GB 缓存存储,3 月 21 天内使用 12 GB 的缓存存储,则缓存存储使用量将为:

使用量(GB)计费(GB-Hours)非收费(GB-小时)
前 10 天为 3 GB0 GB-小时720 GB-小时
接下来的21天总计提供12 GB
          **2\*21 天\*24 小时 = 1008 GB-小时** | 10\*21 天\*24 小时=5040 GB小时 |

对于缓存存储,计费图表和报告仅显示超过包含的 10 GB 使用量的成本。 月末,Actions 缓存存储 SKU 将显示使用量为 1008 GB-小时。

管理 GitHub Actions 的预算

如果你的帐户未添加有效的付款方式,则配额用尽后将无法继续使用服务。

如果你有有效的付款方式,支出可能会受到一个或多个预算的限制。 检查为帐户设置的预算,确保其适合你的使用需求。 请参阅“设置预算以控制按流量计费的产品的支出”。

在计费期间,当你所包含的 GitHub Actions 使用量达到 90% 和 100% 时,可以接收电子邮件通知。 有关详细信息,请参阅“预算和警报”。

其他阅读材料

  •         [AUTOTITLE](/actions/get-started/understand-github-actions)
    
  •         [AUTOTITLE](/actions/get-started/quickstart)