Running your own Node

Self-host your verification node using Docker. Full control and technical responsibility required

For a more non-technical user guide please visit this section

Prerequisites

zkProofer nodes run inside Docker containers. To install Docker please visit

Docker: Accelerated Container Application Developmentarrow-up-right

Hardware requirements

Container-Level Resource Limits

Resource
Single Node / Multi-Node (up to 20 licenses)

CPU

0.5 vCPU (or shared/burstable)

RAM

256 MB

Storage

500 MB

Network

10 Mbps

These limits apply to each container running a zk proofer node.


Minimum Machine Specs (Self-Host)

Resource
Single Node / Multi-Node (up to 20 licenses)

CPU

1 vCPU

RAM

512 MB

Storage

5 GB

Network

10 Mbps

OS

Linux (Ubuntu 22.04+), macOS, Windows (WSL2)

Runtime

Docker 24+

Arch

x86_64 (amd64) or ARM64

Setting up environment variables

To make the process smoother you can set your environment variables before running your zkProffer node

Linux and Mac

Windows

Run the node

Copy and run this command to run your node:

Linux and Mac

Windows

You'll see logs like following:

Find your burner wallet

To get the burner address, check your node logs for the following output:

Top up your burner wallet

If you didn't top it up previously, this step is required. Node uses burner balance to pay for gas.

Delegate

Go to delegation app

  1. Find your delegation app, like https://<project-name>.delegate.easeflow.io/

  2. Connect your owner wallet

  3. Click Delegate next to license, submit your burner address in the field and click Delegate

  4. Sign the transaction

Make sure node detected your delegations

If output of you node includes messages of this format, then you're good.

Advanced

As an alternative to generating a burner for user and storing it in /app/cache folder, it is possible to specify burner private key with ETH_PRIVATE_KEY environment variable:

Last updated