Kick off a software project quickly.

Verdaccio

Verdaccio — self-hosted private npm/yarn/pnpm registry.

< 128 MB RAM 1 vCPU Port 4873 In validation

In validation

Automatic installation for this solution is ready and currently going through our tests on a real server. Ordering will open as soon as validation is complete.

Tech stack

DockerNode.js
Minimum RAM< 128 MB
Minimum CPU1 vCPU
Default port4873
Compatible OSChoice of Linux distributions

Verdaccio is a lightweight open-source (MIT) Node.js private npm registry that acts as both a proxy and a hosting layer for your JavaScript packages.

As a proxy, it transparently forwards requests for public packages to npmjs.org and caches them locally — so your CI pipelines continue to work even during a registry outage, and repeated installs are served instantly from disk. As a private registry, it lets you publish internal packages under any scope (`@company/...`) and keep them completely off the public internet.

Verdaccio ships as a single Docker container with no external database dependency — just a mounted volume for package storage. It speaks the full npm registry protocol, so npm, Yarn, pnpm and any other compatible client work without modification: just point the registry URL at your VPS. On ServOrbit, the container binds to `127.0.0.1` and is reverse-proxied by nginx, so it is reachable from your developers and CI systems without exposing the registry port directly.

Key features

Proxy of npmjs.org — cache packages locally so your CI builds never fail on a registry outage.
Private package publishing — publish and version your internal JavaScript libraries without exposing them to the public registry.
Multi-client support — works natively with npm, Yarn and pnpm without any client-side configuration changes.
Lightweight single-container deployment — runs in under 128 MB RAM with persistent volume storage on a ServOrbit VPS.
Token-based access control — create user accounts and API tokens to restrict who can read or publish to each scope.
Offline mode — serves cached packages without an internet connection, making builds reproducible in air-gapped environments.

When to use this solution?

1

Private package registry for your team

Publish internal JavaScript libraries under your own namespace. Every developer installs them the same way as public packages — no manual Git dependency URLs, no copy-paste.

2

Reliable CI dependency caching

Proxy npmjs.org through Verdaccio and cache every downloaded package. If the public registry goes down during a build, Verdaccio serves the cached version transparently.

3

Air-gapped or offline environments

Pre-populate the cache by running installs once with internet access, then disconnect. Verdaccio continues to serve all previously seen packages with no internet required.

Deploy Verdaccio on your VPS

Guide optimized for ServOrbit Cloud VPS.

01

Connect to the registry

Verdaccio needs no domain to work. Open an SSH tunnel: ssh -L 4873:127.0.0.1:<port> root@<vps-ip>, then point npm at the tunnel: npm set registry http://localhost:4873. For permanent team access, attach a domain from your ServOrbit dashboard — nginx proxies Verdaccio over HTTPS.

02

Create your first user

Run npm adduser --registry http://localhost:4873. Enter a username, password and email. This first user becomes the administrator of the registry.

03

Publish a private package

In your package directory, run npm publish --registry http://localhost:4873. The package is stored on the VPS and available to any developer or CI system authenticated against your Verdaccio instance.

04

Configure scoped proxy rules (optional)

Edit config.yaml inside the container volume to route specific scopes (e.g. @acme/*) to your private registry and all others to npmjs.org. Restart the container to apply: docker compose restart verdaccio.

Frequently asked questions

No. Verdaccio proxies npmjs.org by default — requests for packages not in the local registry are forwarded to the public registry, cached, and served. You can continue to use all public packages normally while keeping your private packages local.

Kick off a software project quickly.

Verdaccio isn't orderable yet.

Automatic installation for this solution is ready and currently going through our tests on a real server. Ordering will open as soon as validation is complete.

Need help?

Browse our help center and FAQ, or reach our team — callback, WhatsApp or email. Support in French, English and Arabic.

Message us on WhatsAppopens in a new tab