Artifact Keeper – Open-Source-Universal-Artifact-Registry, entwickelt in Rust
(github.com/artifact-keeper)Artifact Keeper ist eine Self-Hosting-Artifact-Registry, die in Rust geschrieben wurde und als Alternative zu JFrog Artifactory und Sonatype Nexus gedacht ist. Laut Projektbeschreibung unterstützt sie mehr als 45 Paketformate über native Protokolle, darunter Maven, PyPI, NPM, Docker/OCI, Cargo, Go und Helm.
- Backend auf Basis von Rust + Axum
- MIT-Lizenz
- Betont wird: „kein Open Core, keine Enterprise Edition“
- Unterstützung für mehr als 45 Formate, darunter Maven/Gradle, PyPI, NPM/Yarn/pnpm, Docker/OCI, Cargo, Go modules und Helm
- Bietet ein Repository-Modell mit Local / Proxy / Virtual
- Proxy-Repositories cachen öffentliche Registries wie npmjs.com, PyPI, Maven Central und Docker Hub
- Virtual-Repositories bündeln mehrere Local-/Proxy-Repositories hinter einer URL und lösen sie in festgelegter Reihenfolge auf
- Unterstützt GPG-/RSA-Signaturen für Debian-, RPM-, Alpine- und Conda-Pakete
- Unterstützt als Storage-Backend Dateisystem oder S3
- Verwendet PostgreSQL 16 für Metadaten und Konfiguration
- Bietet eine Security-Scan-Pipeline auf Basis von Trivy + Grype
- Unterstützt Vulnerability-Scoring, Policy Engine und Quarantine-Workflow
- Unterstützt Authentifizierung
- JWT, OpenID Connect, LDAP, SAML 2.0 und API-Token-Authentifizierung
- Unterstützt RBAC und Repository-basiertes Berechtigungsmanagement
- Bietet ein Werkzeug zur Migration von Repositories, Artefakten sowie Benutzern/Berechtigungen aus JFrog Artifactory
- Mit einem WASM-Plugin-System lassen sich benutzerdefinierte Handler für Paketformate hinzufügen
- Unterstützt sandboxed Ausführung auf Basis von Wasmtime, CPU-/Speicherlimits und Hot Reload
- Bietet mit Borg Replication eine P2P-Mesh-basierte Funktion zur Artefakt-Replikation
- Unterstützt Prometheus-Metriken, OpenTelemetry-Tracing und Kubernetes-Health-Probes
- Lässt sich schnell mit Docker Compose starten
- Helm-Chart für Kubernetes-Deployments sowie Terraform-/EKS-/RDS-/S3-Konfigurationen werden in einem separaten IaC-Repository bereitgestellt
- Das Web-Dashboard ist als separates Repository auf Basis von Next.js 15, TypeScript und Tailwind CSS 4 ausgelagert
- Stellt ein separates API-Repository für die OpenAPI-3.1-Spezifikation sowie die Generierung von TypeScript-/Kotlin-/Swift-/Rust-/Python-SDKs bereit
- Stellt auch Repositories für native iOS/macOS- und Android-Apps bereit
Wenn man nach einer self-hosted Registry sucht, die Nexus oder Artifactory ersetzen kann, ist das ein ziemlich interessantes Projekt. Es positioniert sich nicht einfach als „Dateispeicher + Format-Label“, sondern setzt darauf, die nativen Protokolle der jeweiligen Paketmanager direkt zu verarbeiten. Auch das Proxy-/Virtual-Repository-Modell ist für bestehende Nexus-/Artifactory-Nutzer eine vertraute Struktur.
Besonders für Teams, die On-Premises oder im internen Netzwerk Maven, NPM, Docker, PyPI, Helm und weitere Formate zentral verwalten möchten oder eine Registry suchen, die Vulnerability-Scanning, Signaturen, Quarantäne, SSO und RBAC bereits in der Open-Source-Version bietet, ist das einen Blick wert.
1 Kommentare
Es scheint auch eine Lösung namens ProGet zu geben, aber dieses hier dürfte beim Speicherverbrauch definitiv niedriger liegen. Ich sollte wohl testen, ob es unser internes Nexus Repository ersetzen kann.