zhaofengli/attic
说明与用途
**项目简介** zhaofengli/attic 是一个基于 Rust 实现的多租户 Nix 二进制缓存(Binary Cache),旨在为多个团队或 CI/CD 流水线提供安全、隔离且高效的 Nix 包分发服务。
**价值**
- **多租户隔离**:每个租户拥有独立的命名空间和访问控制,避免不同项目之间的缓存冲突。
- **高性能**:使用 Rust 编写,具备低延迟和高并发处理能力,适配大规模构建场景。
- **易于自托管**:提供简洁的二进制发布和 Docker 镜像,可在内部网络或云环境快速部署,降低对外部缓存服务的依赖。
**典型接入方式**
- **部署**:
- 直接运行发布的二进制或使用官方 Docker 镜像
zhaofengli/attic:latest。 - 在
config.toml中配置租户、TLS 证书、存储后端(本地文件系统、S3、GCS 等)。
- **Nix 客户端配置**:在每个使用者机器的
~/.config/nix/nix.conf中添加
substituters = https://attic.example.com/<tenant>
trusted-public-keys = <tenant>-attic-key并在对应租户的机器上分发对应的公钥。
- **CI/CD 集成**:在 CI 脚本(GitHub Actions、GitLab CI、Jenkins 等)里同样配置
substituters,并在构建前登录(若启用 JWT/OAuth)以获取临时访问令牌。
**生产可用性**
- **成熟度**:项目已有 1900+ 星、176 次 fork,近期(2026‑06‑26)仍在活跃维护,代码质量和社区活跃度良好。
- **适用场景**:适合内部原型、团队内部缓存或中等规模的生产环境。
- **风险与准备**:
- 元数据中未提供完整的集成指南,需要自行检查租户鉴权、持久化存储(如 S3)和备份策略。
- 在正式投产前建议进行一次完整的灾备演练,验证缓存失效、节点扩容以及升级流程。
- **总体评估**:在做好安全审计和运维准备后,可作为生产级 Nix 缓存服务使用;若对高可用性有严格 SLA 要求,需自行构建多节点 HA 或配合外部负载均衡器。
实际用途
zhaofengli/attic may be useful when its README and activity match a concrete workflow.
限制与审查说明
Medium: useful for prototypes or internal workflows, with dependency and maintenance checks before production.
- 来源: github
- 语言: Rust
- 记录日期: 2026-09-05T17:32:28.528Z