Github Action 官方托管 与自托管区别
这篇笔记围绕 GitHub Actions 的官方托管 Runner 与 Self-hosted Runner 做取舍说明,重点回答默认机器规格、是否自动扩容、计费方式和运行环境差异。官方 Linux 标准 Runner 通常是 2 vCPU、7GB 内存、14GB SSD,Windows 标准环境也接近 2C7G,macOS 规格相对更高;这些资源不会随构建负载动态增加,任务内存不足时会失败,只有手动选择并付费配置 Larger Runners 才能提升规格。Self-hosted Runner 不消耗 GitHub Actions 每月分钟数,即使长期运行也不会在 GitHub 侧产生分钟账单,但服务器、网络和维护成本需要自行承担。对比部分指出,官方 Runner 每次任务结束后销毁虚拟机,环境纯净、维护成本低,更适合公开仓库;自托管环境持久,能保留 Docker 镜像、node_modules 等本地缓存,构建速度可能明显提升。代价是需要自己安装和维护 Docker、Git、系统环境,并定期清理磁盘,否则容易被缓存和镜像占满。安全边界尤其关键:公开仓库不应随意使用自托管 Runner,因为恶意 PR 可以修改执行脚本并控制服务器;而在内网集成测试、访问私有资源或需要自定义并发能力的场景,自托管才更有优势。
