Zum Hauptinhalt springen
Development

Self-host Zot on a VPS

A minimal, scalable OCI-native container registry.

A lightweight registry that speaks the OCI distribution spec, with a tiny footprint and no database dependency.

Why self-host Zot?

Zot is the simplest way to get a private registry running — one binary, minimal resources, no external database.

How to install Zot

  1. 1

    Provision a VPS

    Pick a Debian/Ubuntu template and get root SSH in about a minute.

  2. 2

    Install the runtime

    Install Single Go binary + filesystem/S3.

  3. 3

    Deploy the application

    Net what you need from the project’s official source and run it.

  4. 4

    Put it behind TLS

    Reverse-proxy with Nginx and issue a Let’s Encrypt certificate.

  5. 5

    Add it to your backups

    Include the data directory and database in your backup routine before you rely on it.

Practical tips

  • Give Zot its own database user with rights only on its own schema.
  • Reverse-proxy Zot and terminate TLS at the proxy so certificates are managed in one place.
  • Take a VPS snapshot before major upgrades so you can roll back cleanly.
  • Keep Zot patched — most self-hosting incidents are unpatched software.

Frequently asked questions

How much RAM does Zot need?
Plan on 1–2 GB for typical use; add headroom if you expect many concurrent users.
What stack does Zot run on?
Single Go binary + filesystem/S3.
Can I run other things on the same VPS?
Yes — size the plan so Zot plus your other workloads fit in RAM with room to spare.

Looking for something else? Popular alternatives include Harbor, Docker Registry, Gitea Packages — browse all app guides.