Why I replaced Nexus with a 32MB binary

Every artifact registry I’ve used is bloated. Nexus wants 4GB RAM. Artifactory is even heavier. I just want to store Docker images and Maven JARs.
So I built NORA — a multi-protocol artifact registry in Rust.

The numbers

NORA: Startup <3…


This content originally appeared on DEV Community and was authored by devitway

Every artifact registry I've used is bloated. Nexus wants 4GB RAM. Artifactory is even heavier. I just want to store Docker images and Maven JARs.
So I built NORA — a multi-protocol artifact registry in Rust.

The numbers

NORA: Startup <3s, RAM <100MB, Image 32MB, MIT license

Nexus: Startup 30-60s, RAM 2-4GB, Image 600MB+, EPL/Commercial

Artifactory: Startup 30-60s, RAM 2-4GB, Image 1GB+, Commercial

What it does

One binary handles all of these:

  • Docker Registry v2 — full OCI spec, pull-through cache for Docker Hub/GHCR
  • Maven — host JARs + proxy to Maven Central
  • npm — private packages + proxy to npmjs.org
  • Cargo — Rust crates hosting
  • PyPI — pip-compatible index

Try it in 10 seconds

docker run -p 4000:4000 ghcr.io/getnora-io/nora:latest

Open http://localhost:4000/ui/ — that's it.

Tech stack

Built with Axum + Tokio. No database — just filesystem or S3. AtomicU64 for lock-free metrics, Tower middleware for auth and rate
limiting, streaming uploads with async background caching.

Links

MIT licensed, contributions welcome.


This content originally appeared on DEV Community and was authored by devitway


Print Share Comment Cite Upload Translate Updates
APA

devitway | Sciencx (2026-03-13T18:15:25+00:00) Why I replaced Nexus with a 32MB binary. Retrieved from https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/

MLA
" » Why I replaced Nexus with a 32MB binary." devitway | Sciencx - Friday March 13, 2026, https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/
HARVARD
devitway | Sciencx Friday March 13, 2026 » Why I replaced Nexus with a 32MB binary., viewed ,<https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/>
VANCOUVER
devitway | Sciencx - » Why I replaced Nexus with a 32MB binary. [Internet]. [Accessed ]. Available from: https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/
CHICAGO
" » Why I replaced Nexus with a 32MB binary." devitway | Sciencx - Accessed . https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/
IEEE
" » Why I replaced Nexus with a 32MB binary." devitway | Sciencx [Online]. Available: https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/. [Accessed: ]
rf:citation
» Why I replaced Nexus with a 32MB binary | devitway | Sciencx | https://www.scien.cx/2026/03/13/why-i-replaced-nexus-with-a-32mb-binary/ |

Please log in to upload a file.




There are no updates yet.
Click the Upload button above to add an update.

You must be logged in to translate posts. Please log in or register.