EN
Back to the archive

The archive · Developer & Business Tools · Product decision · 2025–2026

Unregistry bets Docker images move server-to-server with no registry — 4.9k stars

Pasha Sviderski's docker pussh pushes only missing image layers to a remote host over SSH; Show HN 726 points and 4.9k GitHub stars by Sept 2026.

Unregistry (Pasha Sviderski)

The betThat moving a Docker image from A to B needs no registry at all — only an SSH tunnel to a throwaway containerd-backed registry that transfers missing layers, rsync-style.Live

What the business is

Unregistry is a lightweight container-image registry that stores images directly in a server's containerd image store, plus a docker pussh CLI plugin that pushes images to remote Docker daemons over SSH, transferring only the layers the server lacks.

How it started

Pasha Sviderski built Unregistry for Uncloud, his lightweight tool for deploying containers across multiple Docker hosts, after concluding that every existing way to get a locally built image onto a server was wrong for the job: public registries expose code or charge for privacy, self-hosted registries add a service to maintain and pay for, save-and-load re-transfers the entire image even when 90 percent already exists, and rebuilding remotely wastes time and server resources.

What happened

The 2025-06-18 Show HN drew 726 points and 164 comments. In the thread Sviderski explained the key design constraint — the Docker daemon API cannot fetch or upload a single image layer, which is why the registry writes into containerd's image store — and fielded requests around docker compose and Kamal integration, noting Uncloud was next. By the 2026-09-05 archive crawl the repo showed 4.9k stars and 145 commits; community Debian packages and two GitHub Actions wrapped the plugin, and Uncloud's README listed Unregistry integration as a shipped feature.

No ending yet — it is still running.

Background

Unregistry is a lightweight container-image registry that stores images directly in a Docker server's containerd image store, plus docker pussh, a CLI plugin that pushes images to remote Docker hosts over SSH. It transfers only the layers the server is missing, then tears the temporary registry down — the author's pitch is rsync for Docker images.

The bet came from a specific frustration: moving a locally built image to a server. Docker Hub or GitHub Container Registry make code public or charge for private repos; a self-hosted registry adds a service to maintain; docker save into ssh docker load re-transfers everything even when 90 percent already exists; rebuilding remotely wastes time and server resources. Sviderski built Unregistry for Uncloud, his Kamal-inspired tool for deploying across Docker hosts, and the Show HN pitch was simply that you should be able to move an image from A to B without any of it.

The 2025-06-18 Show HN drew 726 points and 164 comments; Sviderski explained in the thread why the registry writes into containerd's image store (the Docker daemon API cannot fetch or upload a single layer) and fielded docker compose and Kamal integration ideas. By the 2026-09-05 crawl the repo showed 4.9k stars and 145 commits, with a Homebrew tap, community Debian packages, two third-party GitHub Actions, and Unregistry integration listed as a shipped feature in Uncloud's README.

What has to be true

  • Every alternative failed the two-line workflow: registries added a service, a bill or public exposure; save/load re-sent layers that already existed.
  • The mechanism was the pitch: SSH tunnel, throwaway containerd-backed registry, push only missing layers, cleanup — visible, safe and reversible.
  • Shipping as a Docker CLI plugin (docker pussh) made adoption one install and one command, which is why third parties built Debian packages and CI actions around it.
  • It solved the author's own deployment problem inside Uncloud, so the design was tested by real use rather than built for a hypothetical market.

What can be applied

Kill the middleman for the common case: when every existing answer to a simple move is overkill, sell the shortest path between the two endpoints, even if it runs a registry invisibly for seconds.

Aftermath

As of 2026-09-05 Unregistry is live open-source software under active development: 4.9k stars and 145 commits on GitHub, installable via a Homebrew tap or direct download, with community packaging for Debian and two third-party GitHub Actions for CI pipelines. Uncloud, the deploy tool it was built for, lists Unregistry integration among its shipped features and remains pre-1.0. No company, funding or revenue figures appear in the material; Unregistry is a developer tool whose evidence of adoption is stars, third-party wrappers and uptake of the idea rather than a business model.

Sources

spotted an error? The archive wants to know.

Your turn

You just read one. Describe what you are building, and see who is betting on the same thing.

Free account · 3 free questions · no card

Related cases