Advanced Setup
Deploying a Blast node follows the same process as other OP Stack-based chains. This document is based on the master
branch of the Blast repository.
This guide is intended for advanced users who want to build Blast from source. If you prefer to use prebuilt Docker images, refer to the Docker Compose Setup documentation.
Initial Setup
Download Blast genesis.json
& rollup.json
In addition to the Blast repository containing blast-geth
and blast-optimism
, you will also need to obtain the chain configuration files from the deployment repository.
These files contain the essential chain configuration parameters for initializing your Blast node. Ensure you select the correct files based on the network (Mainnet or Sepolia) you want to connect to. This step is crucial for aligning your node with the chosen network’s protocol settings.
To run a Sepolia node, use the sepolia-testnet branch
of the Blast repository. The master
branch is not compatible with the Blast Sepolia testnet.
Building the Docker Images
blast-geth
op-node
This step creates a Docker image of the op-node
, tagged for development use. This image will be used later when running the node.
Generate the jwt secret
Initialize the blast-geth data directory
Use the following command to initialize the data directory. Ensure you have downloaded the appropriate genesis.json
file.
Running
Set up env vars
The sequencer URL and bootnode address must be configured to connect your Blast node to the appropriate peer network and the transaction sequencer.
To do this, you will need to expose the sequencer URL and bootnode address environment variables as follows:
blast-geth
op-node
To fully participate in P2P, ensure TCP/UDP is allowed on port 9003
and set --p2p.advertise.ip=$PUBLIC_IP
.
Blast Mainnet and Testnet have activated the Ecotone upgrade to benefit from EIP-4844. It’s important that you provide a beacon chain API URL ($L1_BEACON_API_URL
) in addition to the $L1_RPC_URL
so your node can read blob data.
Upgrades
Using pre-built docker images
- First, pull latest code from the deployment repository.
- Next, restart the containers with the new Docker image.
Building the docker images from source code
- Pull the latest code from https://github.com/blast-io/blast
- Build new Docker images by following the instructions in the Building the Docker Images section. Ensure your
genesis.json
androllup.json
files are up-to-date in case of any changes (e.g., a hard fork timestamp). - Restart the
blast-geth
andop-node
containers as described in the Running section.
Additional RPC methods
eth_getBalanceValues
To facilitate rebasing ETH balances, accounts on Blast store more fields than just balance in the state trie. This RPC method exposes the underlying parameters that control an account’s rebasing ETH balance.
See our article on Indexing Account Shares for a detailed overview of this RPC method.