Gravity Alpha Mainnet (L2) Node Setup

Instructions about how to run a Gravity Alpha Mainnet node.

Guide

Prerequisites

  1. A local directory for storing node data

  2. An Ethereum mainnet RPC endpoint with unlimited rate limit for eth_getLogs

  3. An Ethereum beacon chain RPC endpoint

  4. Connection to a Celestia lightnode or public RPC endpoint

DAS Server Setup

  1. Setup the Celestia DAS Server

    docker run -d --rm --name celestia-das-server \
        -p 9876:9876 \
        --entrypoint /bin/celestia-server \
        ghcr.io/celestiaorg/nitro-das-celestia:v0.5.4 \
        --enable-rpc --rpc-addr=0.0.0.0 --rpc-port=9876 \
        --celestia.rpc=<YOUR_CELESTIA_ENDPOINT> \
        --celestia.namespace-id=0000047d50b18e30e965 \
        --fallback-enabled \
        --das.rpc.url="https://dap-gravity-mainnet-0.t.conduit.xyz"
  2. Connect to a Celestia RPC endpoint

Syncing a node from scratch can be extremely time-consuming and resource-intensive. We strongly recommend downloading our latest snapshot:

  1. Extract the snapshot to your local directory before running the node.

In our experiment, syncing from scratch without using snapshots will take 20+ days.

Running the Node

Save the following script as run-gravity-node.sh, make it executable with chmod +x run-gravity-node.sh, and update the TODO variables:

Additional Information

  • The chain info is obtained from Conduit:

  • Relay endpoint is provided by Conduit as wss://relay-gravity-mainnet-0.t.conduit.xyz

  • Gravity Alpha Mainnet uses Anytrust DA, with aggregator URL: https://das-gravity-mainnet-0.t.conduit.xyz

  • Celestia namespace for Gravity mainnet: 0000047d50b18e30e965

References

For more information, please check out the following guides:

Last updated

Was this helpful?