VicroCode
让代码创造价值
VicroCode是一个轻量级代码在线发布、交易平台,开箱即用,免部署、免服务器、免备案,支持接入智能体、通用管理系统、游戏等多种项目
稍候片刻,您可先学习AI编程手册
正在加载中...

市场信息

[分享创造] 写了个跑在 Cloudflare Worker 上的私有 Nix Cache

最近写了个 nix-cache-worker ,用 Cloudflare Worker + R2 + D1 搭一个私有的 Nix binary cache 。 主要是因为我自己用 NixOS 管理所有私人机器,deploy 的时候就要现场构建其中部署的私有项目,要花挺久的。更好的办法是在这些项目中配置 CI 触发的构建。

www.v2ex.com · 2026-09-07T10:08:27+00:00

最近写了个 nix-cache-worker ,用 Cloudflare Worker + R2 + D1 搭一个私有的 Nix binary cache 。主要是因为我自己用 NixOS 管理所有私人机器,deploy 的时候就要现场构建其中部署的私有项目,要花挺久的。

更好的办法是在这些项目中配置 CI 触发的构建。一来构建挂了能马上知道,二来构建完成 push 到私有 cache 基本就不用现场编译了。

找了一圈现成的方案,大概有两类: 一类是 Cachix 这类服务,用起来省事,但价格并不便宜,最便宜套餐 50 USD/月。另一类就是 Attic 、niks3 这些开源方案。

功能都挺全,但还是得找地方把服务跑起来,数据库、存储这些也得自己管。这时就有一个比较尴尬的问题:我的基础设施本身就是用 NixOS 管的。

我在 NixOS 机器上部署构建 NixOS 需要的依赖,就出现循环依赖了。所以我更想要一个完全独立在 NixOS 基础设施之外的东西,不需要我再自己运维一台机器。

正好 Cloudflare Worker 、R2 、D1 都有免费额度,我自己的用量基本碰不到收费线,于是就有了这个项目。目前支持: 标准的 nix copy --to / nix copy --from cache 可以公开读,写入走 Token R2 存实际的 cache ,D1 存索引和版本信息 可以按 package / version 管理,也可以打 tag retention / pin / GC ,支持较复杂的 retention 策略 一个简单的 Web 管理页面 我自己现在的流程基本就是: git master push/merge → CI build → nix copy 到 cache → deploy 直接拉 这样私有项目能不能构建,在 CI 的时候就知道了。

deploy 的时候也不用再等它们一个个编译。整个 cache 跑在 Cloudflare 上,不依赖我的任何一台 NixOS 机器。

哪怕机器全挂了,重新装系统的时候 cache 也还在。部署也比较简单,建个 R2 和 D1 ,把 Worker 部署上去就行。

项目是纯 vibe 的,我用了三周了,目前工作良好(对于纯 vibe 这个问题也不用担心,因为 nix 有签名校验,即便 write token 被绕过仍旧无法注入恶意包)。项目地址: /ai-market-guide/ 欢迎部署体验!

返回 AI 市场导读

来源:v2ex.com