Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

zhaofengli/attic

说明与用途

**项目简介**
zhaofengli/attic 是一个基于 Rust 实现的多租户 Nix 二进制缓存(Binary Cache),旨在为多个团队或 CI/CD 流水线提供安全、隔离且高效的 Nix 包分发服务。

**价值**

  • **多租户隔离**:每个租户拥有独立的命名空间和访问控制,避免不同项目之间的缓存冲突。
  • **高性能**:使用 Rust 编写,具备低延迟和高并发处理能力,适配大规模构建场景。
  • **易于自托管**:提供简洁的二进制发布和 Docker 镜像,可在内部网络或云环境快速部署,降低对外部缓存服务的依赖。

**典型接入方式**

  1. **部署**:
  • 直接运行发布的二进制或使用官方 Docker 镜像 zhaofengli/attic:latest。
  • 在 config.toml 中配置租户、TLS 证书、存储后端(本地文件系统、S3、GCS 等)。
  1. **Nix 客户端配置**:在每个使用者机器的 ~/.config/nix/nix.conf 中添加
   substituters = https://attic.example.com/<tenant>
   trusted-public-keys = <tenant>-attic-key

并在对应租户的机器上分发对应的公钥。

  1. **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
原始来源