Skip to main content

GitHub Actions计费

了解如何根据免费限额来衡量 GitHub Actions 的使用情况,以及如何支付额外使用费用。

如何衡量 GitHub Actions 的使用情况

对于自托管运行器和使用标准 GitHub 托管的运行器的公共存储库,GitHub Actions 的使用是免费的************。 请参阅“选择作业的运行器”。

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

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

提示

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

存储计费的工作原理

GitHub Actions 存储计费采用按小时应计模型

  •         **持续计费:** 存储费用根据整个月份的实际使用情况每小时产生一次
    
  •         **每月总计:** 您的帐单反映的是整个月份使用的存储总量,测量单位为GB-小时。
    
  •         **包含的存储量:** 您计划中的免费存储容量(例如企业计划中的 50 GB)将转换为每小时的费率以进行计费计算
    
  •         **共享存储:** Actions 工件、Actions 缓存和 GitHub Packages 存储均共用同一额度。 有关详细信息,请参阅“[AUTOTITLE](/billing/concepts/product-billing/github-packages)”。
    

了解当前存储与累积存储

请务必了解 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 计划中。 在每个月初,帐户使用的分钟数重置为零。

数据 可重用.billing.操作包含的配额 %}

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

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

注意

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

使用量超出包含的配额

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

支付额外的 GitHub Actions 使用费用

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

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

注意

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

基线分钟成本

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

例如,在 GitHub 托管的 Windows 和 macOS 运行程序上运行的作业的成本比 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)