Act(7.1万星)2026:推送前在本地跑GitHub Actions——完整工作流测试指南
Act(71,347星)用Docker在本地运行你的GitHub Actions工作流,推送前就能测试CI。本文教你配置并加速调试工作流。
💡 你将学到
Act(71,347星)用Docker在本地运行你的GitHub Actions工作流,推送前就能测试CI。本文教你配置并加速调试工作流。
直接给结论
nektos/act(71,347星,Go)在本地运行GitHub Actions。它在模仿GitHub托管runner环境的Docker容器里执行你的工作流文件,让你不用等推送、不烧Actions分钟数就能测试、调试和迭代CI。
为什么开发者喜欢它
- 即时反馈:几秒测试一个工作流,不用等几分钟
- 零成本:本地运行不消耗Actions分钟数
- 真实环境:容器与runner镜像高度一致
- 密钥安全:密钥留在本地,不进GitHub日志
安装与运行
# macOS
brew install act
# Windows (choco) / Linux (curl)
curl -s https://raw.githubusercontent.com/nektos/act/master/install.sh | sudo bash
# 运行默认工作流(push事件)
act
# 模拟pull request
act pull_request
# 运行指定job
act -j build
# 干跑——看看会执行什么
act -n
本地配置密钥
在仓库根目录建 .secrets(加入git忽略):
GITHUB_TOKEN=ghp_xxx
MY_API_KEY=sk-xxx
然后运行 act --secret-file .secrets。本地环境变量用 --env-file .env。
实用技巧
- 运行前用
act -l列出所有job。 - 固定容器镜像与runner一致(必要时加
--container-architecture linux/amd64)。 - 服务依赖(Postgres、Redis)用
--service或在工作流services里定义。 .secrets千万别提交——加进.gitignore。
FAQ
支持所有GitHub Actions特性吗? 大部分支持——矩阵构建、缓存、复合action都能用;少数平台特定行为有差异。
需要Docker吗? 需要——act在Docker容器里运行job。
免费吗? 是——开源(MIT)。
相关文章
❓ 常见问题
Does it support all GitHub Actions features?
Most of them - matrix builds, caching, and composite actions work; a few platform-specific behaviors differ.
Do I need Docker?
Yes - act runs jobs in Docker containers.
相关文章
2026-08-01
Embedding API价格对比:OpenAI vs Cohere vs Gemini vs Mistral
2026-08-05
2026年开源个人AI助手:Open WebUI(14.8万星)对比 Khoj 与 chatbot-ui,你的私密Siri替代品
2026-08-05
2026年AI会议排期助手:Cal.com(4.7万星)自托管+大模型,终结邮件来回复
本站文章由编辑人工撰写,收录的工具均经过实测或公开资料核验。文中链接指向工具官网或 GitHub 仓库,仅作信息参考,不构成付费推广。
