Docker images

Ready-to-run pieces of the platform.

Fifteen public image repositories package the runtime, GPU prover, operator tools, recovery controls, and release checks. The current public tags and immutable pull commands are listed below, including all five supported NVIDIA SM builds.

15 public image repositoriesChecked 27 August 2026

The short version

An image is a packaged role, not the whole system.

Docker downloads the same filesystem and startup command on every machine. The coordinator assigns work, a room node runs the application, the prover agent carries proof jobs, and prover-cuda performs the GPU work. The remaining images help deploy, observe, recover, and test that path.

The cards below record 19 current references across those 15 repositories. Choose the GPU-specific build where required, then copy the digest-pinned pull command. A tag is a readable release signpost; the sha256 digest is the immutable image identity.

Docker Hub retains older and intermediate tags. This page recommends the current public pins rather than presenting every historical build. The 23 August operations and validation candidates are usable public images, but their current manifests do not carry source-revision OCI labels, so they are not presented as source-attested releases.

Run a room

These four images are the main application, execution, queue, and proof path.

Runtime · linux/amd64

zkdeal/coordinator

What it is for

Runs the coordinator API, console, and the control-plane roles that manage rooms and proof jobs.

How it works

The same packaged server can start the coordinator or a delegated worker role. It connects application activity to the proof queue and watches the L1 result.

Published image

  • Current coordinator20260827-shopfinal-faa4149
    docker pull docker.io/zkdeal/coordinator:20260827-shopfinal-faa4149@sha256:fd6a3f687b2b09e3df1336f0318804b339d12fa9d53e0a5ed9d6796bd047ec05
View image on Docker Hub

Runtime · linux/amd64

zkdeal/headless-room-node

What it is for

Runs an application room node without a browser interface.

How it works

It loads a room configuration, executes allowed actions, talks to peers, requests proofs, and exposes health, readiness, metrics, and capability endpoints.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/headless-room-node:20260823-5090rc@sha256:5af27c61e3ccdaba5febf48acfb41b8c911a67e45678afde4e50c0e3e56a095d
View image on Docker Hub

Runtime · linux/amd64

zkdeal/prover-agent

What it is for

Moves proof jobs between the coordinator queue and a GPU prover.

How it works

The agent leases one job, sends its input to the local prover, returns the proof, and reports bounded liveness through the coordinator.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/prover-agent:20260823-5090rc@sha256:01ecf7279521779bde24b77bff34033136d712cd955436cc0642e5cd9feee398
View image on Docker Hub

GPU runtime · sm86 / sm89 / sm90 / sm100 / sm120

zkdeal/prover-cuda

What it is for

Runs the RISC Zero proof service on a supported NVIDIA GPU.

How it works

Choose sm86 for Ampere, sm89 for Ada, sm90 for Hopper, sm100 for datacenter Blackwell, or sm120 for GeForce Blackwell. The service replays a room batch in the zkVM and wraps the result as a Groth16 proof for L1 verification.

Published images

  • Ampere · sm86sm86-d60547b-20260827
    docker pull docker.io/zkdeal/prover-cuda:sm86-d60547b-20260827@sha256:d6fb137376c365fe3c881fbe89cd1a7111e2309f278a54144d0502cd6eea50e7
  • Ada · sm89sm89-d60547b-20260827
    docker pull docker.io/zkdeal/prover-cuda:sm89-d60547b-20260827@sha256:910afc1e2fb078ac8b4f11f64bdf7aa3d8b1f4b8cadf8a142b7b9e66bde08006
  • Hopper · sm90sm90-d60547b-20260827
    docker pull docker.io/zkdeal/prover-cuda:sm90-d60547b-20260827@sha256:35043aa6408292420695812a64bd2aa0f9e180019d78ce2b5cd7caedaaf8dd84
  • Datacenter Blackwell · sm100sm100-d60547b-20260827
    docker pull docker.io/zkdeal/prover-cuda:sm100-d60547b-20260827@sha256:e1a0b4b36637a415823fdcf1139657884dfa1f1016441a8d1e3701bed4483d67
  • GeForce Blackwell · sm120sm120-d60547b-20260827
    docker pull docker.io/zkdeal/prover-cuda:sm120-d60547b-20260827@sha256:16f8849f1db554c97c9571d5c43e399a24c61b239f728b70bec93fa29d7f799d
View image on Docker Hub

Deploy and recover

These images make an installation repeatable, inspectable, and recoverable without adding application logic.

Operations · linux/amd64

zkdeal/operator-docs

What it is for

Serves operator guides, API references, schemas, metrics, and runbooks as a small local website.

How it works

NGINX serves the versioned documentation shipped with the deployment, so an operator can read the matching guidance even when external services are unavailable.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/operator-docs:20260823-5090rc@sha256:b8888bccf8cf0c8494578c6eec677825cd5479053a7369dd15dfa7307252384e
View image on Docker Hub

Operations · linux/amd64

zkdeal/deployment-tools

What it is for

Provides one consistent toolbox for validation, deployment, and inspection.

How it works

It packages the reviewed Python scripts with Docker, Kubernetes, Helm, Kind, Kurtosis, and MinIO clients. The same tool versions run on every operator machine.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/deployment-tools:20260823-5090rc@sha256:de8a00b515841ec0877209a1a40c227c0fd475a1a37d20886eacb7d7e09fa91d
View image on Docker Hub

Operations · linux/amd64

zkdeal/backup-tools

What it is for

Supplies the PostgreSQL, MinIO, encryption, backup, restore, and archive-checking tools.

How it works

The container runs the checked-in backup and restore scripts with fixed tool versions, keeping recovery commands separate from the application containers.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/backup-tools:20260823-5090rc@sha256:4c44a9de657c8adc492c914169f35512b51089c2e02e37ebbc35cd35d70b1936
View image on Docker Hub

Recovery · linux/amd64

zkdeal/promotion-controller

What it is for

Decides whether a warm standby has enough evidence to become the active coordinator.

How it works

It checks health, database replay, fencing, and freshness, then asks separately scoped services to perform the promotion. It does not directly control Docker or Kubernetes.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/promotion-controller:20260823-5090rc@sha256:5e1f8b5e48f11989cdb7c1e9844a21fe5630979dc075106eb7cfc5576d779db2
View image on Docker Hub

Recovery · linux/amd64

zkdeal/failover-provider

What it is for

Performs the small set of approved Docker or Kubernetes actions needed during failover.

How it works

A scoped request tells it to fence the old writer, promote the standby, and move the stable route. It returns evidence of what actually changed.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/failover-provider:20260823-5090rc@sha256:e6436cc8184fd7963308579c40b7caced7b03fe6f20cab688029efcfc294fd12
View image on Docker Hub

Test a candidate

These images exercise failures and long-running behavior before a candidate is treated as ready.

Verification · linux/amd64

zkdeal/acceptance-runner

What it is for

Checks that a hosted candidate behaves like the source-bound build it claims to be.

How it works

It follows a fixed scenario plan, calls the live services, joins their evidence, and fails when a source identity or required behavior does not match.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/acceptance-runner:20260823-5090rc@sha256:695ccf14f886b30e8d1066a041970b712f50df4228a326381bf30ef1dfe2f92b
View image on Docker Hub

Verification · linux/amd64

zkdeal/failover-runner

What it is for

Rehearses a real promotion and checks that the old writer cannot continue afterward.

How it works

It drives the promotion controller and failover provider, measures recovery, then runs independent split-brain and fencing assertions.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/failover-runner:20260823-5090rc@sha256:95a88ade2c78e25c359c3c8e03abcfe523b316f4470b81f979c205deab9d8c0d
View image on Docker Hub

Verification · linux/amd64

zkdeal/soak-runner

What it is for

Coordinates a long, restart-safe lifecycle test and checks that it closes cleanly.

How it works

It binds the run to one candidate, resumes from durable state, and verifies the append-only evidence. The published wrapper is not by itself proof that a release passed the soak.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/soak-runner:20260823-5090rc@sha256:100b2eb022c44b5f46271031de8750853c865c9296c2c491da99d6fac7c03a79
View image on Docker Hub

Verification · linux/amd64

zkdeal/fault-control

What it is for

Introduces known failures and bounded load during resilience tests.

How it works

It accepts only an allow-listed fault or load profile for a named candidate, records the attempt, and prevents callers from supplying arbitrary commands or targets.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/fault-control:20260823-5090rc@sha256:b1fb5f8e55059d72ad916e10a673c4e8e6804a3e65ead1511969df075af19f76
View image on Docker Hub

Verification · linux/amd64

zkdeal/backup-restore-control

What it is for

Runs a controlled PostgreSQL and object-store backup-and-restore rehearsal.

How it works

It encrypts candidate-bound backups in a separate store, restores only into fresh targets, and compares the restored hashes before reporting success.

Published image

  • Current linux/amd64 build20260823-5090rc
    docker pull docker.io/zkdeal/backup-restore-control:20260823-5090rc@sha256:e3010f4571014db45796d9d8a4ffed4aa9c55513b073e31285d36b8f729e327d
View image on Docker Hub

Build the prover

This is a build environment, not a service you normally keep running.

Build image · sm89

zkdeal/prover-cuda-toolchain

What it is for

Provides the CUDA, Rust, RISC Zero, and Groth16 tools used to compile an sm89 prover.

How it works

Use it as the controlled build stage when reproducing the RTX 4090 prover. The resulting runtime belongs in prover-cuda; this image is not the HTTP proof service.

Published image

  • Ada · sm89 toolchainsm89
    docker pull docker.io/zkdeal/prover-cuda-toolchain:sm89@sha256:8c4b361f968792276aad00a9b709d063d14b51729e859db5188788e24bab977b
View image on Docker Hub

See the other half of the public platform.

Explore the public repositories