这个项目能做什么

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 之前的契约可能会演进。