比較
CI/CD 工具與平台比較
GitHub Actions、GitLab CI、CircleCI 與 Buildkite 都能妥善執行建置。它們的差異在於 SBOM 與來源證明從哪裡來:儲存庫、您加入的工具,或是全程觀察建置的執行器。
更新日期
本文適合誰
您正在選擇 CI/CD 平台,或檢視目前使用的平台,而評估清單上多了一個新問題:客戶、稽核人員或歐盟 Cyber Resilience Act(CRA)要求您說明每個版本納入了什麼。這裡的每個平台都能執行您的建置,差別在於這些佐證資料從哪裡來, 以及有多少需要您自行整合。
CRACI 正是因此出現在本頁,但它並不是 CI 平台。它是 GitHub Actions 的執行器:您繼續使用
GitHub Actions,只需將 runs-on 改為 craci。CRACI 目前僅支援 GitHub Actions,
GitLab CI 與 Jenkins 已列入產品藍圖。
GitLab CI、CircleCI 與 Buildkite 的管線無法在其上執行。CRACI 是我們打造的產品,請將這點納入考量;其他產品
則依據其本身的文件來介紹。
SBOM 應該從哪裡來?
平台可以從三個地方取得 SBOM。
- 儲存庫。平台解析 manifest 與 lockfile。GitHub 的相依關係圖與 GitLab 以 SBOM 為基礎的相依套件掃描都採用這種方式。它隨時啟用、執行成本低,描述的是專案所宣告的內容。 它看不到安裝腳本、下載的工具鏈,也看不到從快取還原的套件, 而且 GitHub 的匯出反映的是預設分支,而不是固定的某個 commit。
- 您加入管線的工具。您以步驟形式執行 SBOM 產生工具,可以透過 CircleCI orb,或在 您的 Buildkite agent 上執行。這種方式很彈性,結果則取決於工具及其設定:每個產生工具讀取的檔案不同、 解析方式也不同,因此即使將兩個工具指向同一份乾淨的 checkout,也不會得到相同的元件清單。 CRACI 無法以這種標準比較,因為它記錄的是建置,而不是掃描目錄。
- 全程觀察建置的執行器。SBOM 根據作業執行期間產生的流量記錄而成。 這正是 CRACI 的做法。
來源證明也有相同的區分。GitHub 的建置產物證明(artifact attestations)是您加入工作流程的一個步驟,提供 SLSA v1.0 Build Level 2,搭配可重複使用的工作流程則可達 Level 3。GitLab Runner 在所有方案中都能產生 SLSA 1.0 來源證明聲明。 Buildkite Package Registries 可發布 SLSA 來源證明,Buildkite 表示其符合 Build Level 1,僅適用於 Enterprise 方案。CRACI 的 API 會回傳來自觀察該作業之執行器的來源證明資料,未簽章,也沒有 SLSA 等級。
一覽
GitHub Actions 欄位包含團隊搭配使用的 GitHub 平台功能:相依關係圖、 Dependabot、建置產物證明與 GitHub Advanced Security。價格截至 2026 年 9 月。
| 功能 | CRACI | GitHub Actions | GitLab CI | CircleCI | Buildkite |
|---|---|---|---|---|---|
| 產品定位 | GitHub Actions 的執行器 | 內建於 GitHub 的 CI/CD | GitLab 平台中的 CI/CD | 託管型 CI/CD | 搭配自架 agent 的混合式 CI |
| 原始碼控管 | GitHub | GitHub | GitLab | GitHub、GitLab、Bitbucket | GitHub、GitLab、Bitbucket 等 |
| 從建置記錄相依套件 | 實際觀察到的擷取,含快取 | Maven、Gradle、Python 的建置資料 | 讀取 lockfile | ||
| SBOM 匯出 | 每個作業的 CycloneDX、SPDX | 儲存庫相依關係圖的 SPDX | CycloneDX 報告 | 透過您加入的 orb | 您 agent 上的工具 |
| 建置來源證明 | 透過 API 提供來源證明資料;未簽章 | SLSA Build L2 或 L3 | SLSA 1.0 聲明 | 未說明 | SLSA L1,Enterprise |
| 建置對外連線政策 | 依作業設定,失效即封鎖 | Azure 網路,大型執行器 | 由您在自有執行器上處理 | 提供 IP 範圍供允許清單使用 | 由您在自有 agent 上處理 |
| 相依套件漏洞警示 | 受監控的 SBOM | Dependabot | Ultimate | 透過 orb | 未說明 |
| SAST 與機密掃描 | 私有儲存庫需付費 | 所有方案皆含基本功能 | 透過 orb | 未說明 | |
| Windows 與 macOS | 目前僅支援 Linux | 託管版為 Beta | |||
| 在您自己的機器上執行 | 客戶自架執行器,Enterprise | 核心模式 | |||
| 法規遵循報告 | CycloneDX 或 SPDX 格式的 SBOM,透過 API 取得紀錄;不提供報告匯出 | Security overview | Ultimate | 未說明 | 未說明 |
| 起始價格 | 每 2 vCPU 分鐘 $0.004,沒有月費 | 依方案提供 2,000 至 50,000 分鐘 | Free 含 400 分鐘;Premium 每位使用者 $29 | Free 含 30,000 credits;每月 $15 起 | Free 方案;Pro 每位活躍使用者 $30 |
- 支援
- 部分支援
- 不支援
- 已列入產品藍圖
各平台介紹
CRACI,GitHub Actions 的安全執行器
CRACI 取代的是執行器,而不是 GitHub Actions。安裝 CRACI GitHub App 並變更 runs-on;執行紀錄
仍會顯示在 GitHub UI 中。每個作業執行時,具備套件感知能力的代理伺服器會記錄它擷取的內容,包括
從 CI 快取還原的套件,並產生 CycloneDX 或 SPDX 格式的 SBOM,依作業與快取標示完整性狀態。
對外連線政策會在作業開始前驗證,且失效即封鎖(fail closed)。
最適合出貨軟體、需要每個版本佐證資料的 GitHub Actions 團隊。
需要注意目前僅支援 GitHub Actions 與 Linux(GitLab CI、Jenkins、Windows 與 macOS 已列入
產品藍圖),也不提供 SAST 或
機密掃描。
GitHub Actions
內建於 GitHub 的 CI/CD,提供託管的 Linux、Windows 與 macOS 執行器,以及在您自己機器上執行的自架執行器。 各方案每月包含 2,000 至 50,000 分鐘,截至 2026 年 9 月,標準 2 核心 Linux 執行器為每分鐘 $0.006。 周邊還有相依關係圖、Dependabot 警示與安全性更新、建置產物證明,以及付費的 GitHub Secret Protection 與 GitHub Code Security 產品。 最適合程式碼已放在 GitHub 上的團隊。需要注意除非您自行加入產生工具, 否則 SBOM 描述的是儲存庫,而不是建置。
CRACI 與 GitHub 託管執行器比較,以及 CRACI 與 GitHub Advanced Security
GitLab CI
完整 DevSecOps 平台的一部分:原始碼控管、merge request、規劃與 CI/CD 整合在單一產品中。基本的 SAST、機密偵測與容器掃描在所有方案中皆可使用;Ultimate 另外提供相依套件掃描、持續漏洞掃描、 DAST 與漏洞報告。託管執行器涵蓋 x86-64 與 arm64 上的 Linux,Windows 與 macOS 則為 Beta。 截至 2026 年 9 月,Free 包含 400 運算分鐘,Premium 為每位使用者每月 $29,按年計費。 最適合希望整個生命週期由單一廠商提供的團隊。需要注意 相依套件偵測來自 lockfile,而簽章的 SLSA Level 3 證明被 GitLab 列為實驗性功能。
CircleCI
成熟且靈活的託管 CI/CD 平台,可連接 GitHub、GitLab 與 Bitbucket。它能在 Docker、 Linux、Arm、Windows、macOS 與 GPU 資源類別上執行作業,並提供在您自己機器上執行的自架執行器。所有方案 都包含 Docker layer 快取,測試拆分則依執行時間資料將測試套組分散到平行執行環境。其供應鏈 指引的重點在於透過 context 與 OIDC 保護憑證。截至 2026 年 9 月,Free 方案每月 包含 30,000 credits。最適合混合多種平台與大型測試套組的團隊。 需要注意SBOM 與掃描來自您接入的 orb 與工具。
Buildkite
混合式平台:Buildkite 的 SaaS 控制平面負責協調,執行作業的 agent 則位於您自己的 基礎架構上,因此原始碼與機密會留在您的環境中。也提供託管 agent,截至 2026 年 9 月,Linux 上為每 vCPU 分鐘 $0.004。簽章的管線讓 agent 能拒絕上傳後遭修改的作業, Test Engine 則處理不穩定的測試與測試拆分。最適合必須在您自己的 硬體或網路上執行的建置。需要注意建置安全需由您自行設計:Buildkite 自己的 指引要求您在 agent 上強制執行嚴格的網路對外連線控管。
CRACI 的定位
CRACI 是 GitHub Actions 的補充,而不是 CI 平台的替代品。在 GitHub 上,常見的配置是在每個 pull request 上使用 GitHub Advanced Security 與 Dependabot,並以 CRACI 作為記錄每次建置並強制執行對外連線政策的執行器。 每當有新漏洞出現,受監控的 SBOM 都會重新評估,並可匯出為 CycloneDX 或 SPDX(包含漏洞)。 它能自動化企業在更廣泛的 Cyber Resilience Act 法規遵循流程中所需的軟體供應鏈可視性與 佐證資料的相當大一部分。
如果您的管線位於 GitLab CI、CircleCI 或 Buildkite,使用 CRACI 意味著要將這些管線移轉到 GitHub Actions。GitLab CI 與 Jenkins 已列入產品藍圖。以下情況,CRACI 並不是合適的選擇:
- 您想要以單一平台處理程式碼、規劃、CI 與掃描。GitLab 正是為此而生。
- 建置必須在您自己的硬體或網路上執行。Buildkite 與自架執行器較適合;CRACI 目前為代管型,Enterprise 的客戶自架執行器已列入產品藍圖。
- 您需要 Windows、macOS 或 GPU 建置。CRACI 目前僅支援 Linux;Windows 與 macOS 已列入產品藍圖。
- 您現在就需要有文件記載的 SLSA 等級。GitHub 的建置產物證明可以提供。
請參閱 CRACI 價格方案與 CI/CD 整合。
CRACI 與各工具比較
- CRACI vs GitHub 託管執行器 同樣的工作流程,更快的建置,更低的成本。
- CRACI vs GitLab CI DevSecOps 平台的掃描工具,對比會記錄建置的執行器。
- CRACI vs CircleCI 託管式 CI,對比建置時佐證資料。
- CRACI vs Buildkite 自架代理程式,對比會記錄建置的執行器。
- CRACI vs Blacksmith 高速執行器,對比內建供應鏈安全的 CI。
- CRACI vs Depot 建置加速,對比建置佐證資料。
- CRACI vs Namespace 高速 CI 基礎架構,對比會記錄建置的執行器。
- CRACI vs WarpBuild 高速執行器與 BYOC,對比附帶佐證資料的執行器。
- CRACI vs RunsOn 在您 AWS 帳戶中的執行器,對比會記錄建置的執行器。
- CRACI vs Ubicloud 低成本執行器,對比內建供應鏈安全的 CI。
- CRACI vs Avrea CI 可觀測性,對比建置時佐證資料。
- CRACI vs Harness 管線中的 SBOM 掃描,對比會記錄建置的執行器。
- CRACI vs Northflank 建置與部署平台,對比會記錄建置的執行器。
- CRACI vs Jenkins 需自行維運的 CI 伺服器,對比會記錄建置的代管執行器。
- CRACI vs Azure Pipelines 平行作業,對比附建置佐證資料、按分鐘計費的執行器。
並列比較
在同一頁比較多款工具,適合您在選擇類別而非單一產品時參考。