Run an RPC

Overview

Operators can deploy permissionless RPC nodes for the Lumia zkEVM.

dApp projects should ideally run their own RPC node to retrieve the necessary blockchain data and shouldn't rely on public infrastructure. Public endpoints may respond slowly or not at all during times of high network traffic, and are rate limited.

Alchemy nodes will soon be available, docs will be updated once ready.

Requirements System

Note: Storage space requirements will increase as the network grows.

  • Linux OS

  • 32GB RAM

  • 1TB Storage (SSD)

Prerequisites

This tutorial requires Docker and Docker Compose to be installed on your machine. If you don't have these installed, check out the links provided below:

  • Docker: https://www.docker.com/get-started

  • Docker Compose: https://docs.docker.com/compose/install/

Ethereum RPC Node

A Sepolia (Ethereum testnet) RPC node is required for running a Lumia zkEVM testnet node. There are two options available:

  1. Set up your own - the Geth client is one example.

  2. Use an RPC provider endpoint - developers building on Lumia may be entitled to special offers or promos.

This document does not cover the installation of the Ethereum node. We will use a public RPC endpoint for this document, but keep in mind that this is not a viable production solution: public endpoints are rate limited and as a result, your Lumia zkEVM node may not synchronize correctly.

RPC via Docker Image

For a streamlined development experience, it’s highly recommended to utilize the below mentioned repository. The repo will be actively maintained by Lumia team and Docker images within dockerfile will be updated and will simply restarts services with new images to upgrade ForkIDs.

Steps

  1. Clone GitHub repository to your local machine:

git clone https://github.com/orionprotocol/cdk-validium-permissionless-node.git
  1. Navigate to the cloned directory:

cd cdk-validium-permissionless-node
  1. Go to config/testnet(or mainnet)/genesis.json copy the content of genesis.json and paste into config/genesis.json

You MUST copy the relevant network genesis.json file into config/genesis.json

  1. Update .env file and supply a reliable L1 ETH RPC

  2. To start nodes run below command:

docker-compose up

Nodes will take up to 12 hours to sync up with latest state of Lumia L2.

Access from outside

To make an RPC endpoint URL available from outside, it is recommended to add an HTTP server.

Last updated