主要观点:Binary caching 是 Nix 的核心特色之一,能获取 derivations 的构建结果而非本地构建,使 Nix 操作更快速,但现有缓存解决方案不适用于安全生产场景,于是推出 FlakeHub Cache。
关键信息:
- FlakeHub Cache 提供强大的细粒度访问控制,目前处于私有 beta 阶段,可注册试用。
- 其访问控制模型可在 flake 级别授予或拒绝读写访问,读取时可控制用户或代理的读取权限,写入时需通过受控的认证构建环境,基于 JSON Web Tokens 进行认证,目前支持 GitHub 认证,不久将支持 GitLab 认证。
- 缓存工作原理是应用切片抽象,每个 flake 有自己的切片,用户认证后确定可访问的切片并组合成缓存视图,可在 flake 级别配置垃圾回收等。
- 是一种新的缓存模型,不允许公开缓存,仅能从 CI 推送,通过 Magic Nix Cache Action 启用推送,配置简单且性能更好。
重要细节: - Nix 的官方二进制缓存服务器
nix-serve
存在重大缺陷,不适合安全生产场景,而 FlakeHub Cache 更具优势。 - 写入缓存时仅作为 GitHub Actions 运行的一部分,无临时推送访问权限,能更好满足有严格安全要求的组织。
- 从安全、性能等方面阐述 FlakeHub Cache 的优势,如无需分发大量公钥、减少网络往返和认证握手等。
- 确定 Systems 是 Nix 生态系统中唯一符合 SOC2 标准的供应商,可注册试用 FlakeHub Cache 体验其变革。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。