Skip to main content

Deploying a Rollup Verifier/Replica Node From Binary

To build an app on Mantle network, you'll need access to a Mantle node. There are multiple public Node RPC Providers that you can choose from, or you can deploy your own depending on the requirements for your specific use cases.

If you want to customize the op-geth and run with your own binary, please follow this tutorial.

info

Due to the fact that MantleDA in op-node is powered by EigenDA technology, which is currently not open-source yet, op-node still needs to be run using Docker.

Prerequisites

Ensure you have the following software installed:

Hardware Recommendations

For optimal performance, it is recommended to have the following hardware specifications:

  • RAM - 16GB+
  • CPU - 8C+
  • Storage - 4T+ disk(HDD works for now, SSD is better)
  • Bandwidth - 10mb/s+ download speed

Approximate Disk Usage

As of Dec. 25, 2023:

  • Archive node: ~1.5TB
  • Full node: ~75GB

Installation and Configuration

Clone the Repository

Firstly, we need to clone the repository:

git clone https://github.com/mantlenetworkio/networks.git

Initialize to Generate Files

Before running the node, you need to generate some necessary files, such as the jwt_secret.txt and p2p_node_key.txt. You can find more details here.

Deploy the Node

We recommend that you start the node with the latest snapshot, so that you don't need to wait a long time to sync data. Check this to know how to get the latest snapshot.

info
  • Depending on the user's location, we provide download links for snapshots in different regions. Check more details here.

  • If you want to run with fullnode mode, please change the --gcmode to full in the gethv2.sh.

Operate Mantle Node

Once the snapshot is downloaded and extracted to the correct folder, you can start the node with the following steps:

1. Prepare the corresponding repos to run the node and switch to the correct release version:

# Download Mantle v2 Tectonic op-geth
git clone https://github.com/mantlenetworkio/op-geth.git
cd ./op-geth
git checkout release/v1.0.0

2. Build op-geth binary:

make geth

3. Move the binary to the correct folder and start the node:

cd ./../networks
cp ./../op-geth/build/bin/geth ./

# export PATH
export PATH=$PATH:$(pwd)

# Run op-geth script firstly
./gethv2.sh

4. Start the op-node by using docker:

info

Please make sure to change your own L1 RPC Node URL in the docker-compose-mainnetv2-nodeonly.yml.

OP_NODE_L1_ETH_RPC: 'wss://mainnet.gateway.tenderly.co' #change this
docker-compose -f docker-compose-mainnetv2-nodeonly.yml up -d

Verification

Check Service Status

Once you start the node, you also need to check the service status, we provide a command to check the service status and the chain data.

Example

When we use cast bn to check the service status, we will get the block number of the latest block. For example:

1758076

We can run this command many times to make sure the service is running correctly.