这个项目能做什么
Artifact Gateway 是一个早期发布版本(v0.1.0)的轻量级构件仓库系统,采用 Go 编写。它为托管和代理多种包生态系统中的软件构件提供了协议原生接口。
**支持的格式:**
- OCI(Registry V2 上传、清单、标签、引用者)
- Maven(兼容 Gradle,可选 Nexus 风格根目录)
- npm(原生发布,合并 packument)
- PyPI(Nexus 根目录 twine 上传,PEP 503/691 读取)
- Go 模块(GOPROXY 读取,Nexus 兼容 ZIP 发布)
- Conan 2(修订感知生命周期)
- 原生构件(PUT/GET/HEAD,范围,断点续传上传)
- APT(预览版)
**架构:**
PostgreSQL 作为唯一的协调和数据库依赖,处理仓库状态、授权、生命周期作业、租约、锁、幂等性和审计。S3 兼容对象存储(本地捆绑的 RustFS)用于存放数据库外的构件字节。不需要 Redis、Kafka、Elasticsearch 或外部消息队列。默认的独立角色在一个进程中运行 API、调度器和工作进程;较大的部署可以按角色拆分。
**操作细节:**
- 二进制大小:约 28.88 MiB(Linux/arm64)
- 空闲内存:约 53.59 MiB;在 128 个并发客户端下峰值约为 104 MiB
- Web 控制台可在端口 4173 访问,用于仓库管理
- 支持 OIDC SSO、服务账户、匿名读取策略、保留、提升、复制、Webhook、扫描集成、隔离区、指标和备份/恢复工作流
**部署:**
容器镜像发布到 GHCR。可通过 `make dev-bootstrap` 和 `make dev` 获取 Docker Compose 快速启动。提供 Kubernetes 和分布式部署文档。PostgreSQL 迁移已打包。
**许可证:** MIT
项目状态为早期发布;1.0 之前的契约可能会演进。
评论
0 评分人数达到10人后显示
登录后参与讨论。