🐳Docker
Authors: [ Ankur | Dapplooker]
System Requirements
CPU
OS
RAM
DISK
4 vCPU
Ubuntu 22.04
16 GB
500 GB (SSD)
The Gravity node has a size of 407 GB on 20, February , 2025.
Pre-requisite
Before starting, clean the setup then update and upgrade. Install following:
Docker
Git
Go v1.23+
Ethereum Mainnet RPC
Ethereum Beacon Chain RPC
Commands
sudo apt update -y && sudo apt upgrade -y && sudo apt auto-remove -y
sudo apt install docker.io git ufw -y jq -y
Firewall Settings
Set explicit default UFW rules
sudo ufw default deny incoming
sudo ufw default allow outgoing
Allow SSH, HTTP, and HTTPS
sudo ufw allow 22/tcp
sudo ufw allow 80
sudo ufw allow 443
Allow Remote connection
sudo ufw allow from ${REMOTE.HOST.IP} to any port 8545
Setup Instructions
docker run -d --name gravity_alpha_mainnet \
-v ~/gravity/arbitrum:/home/user/.arbitrum \
-p 0.0.0.0:8547:8547 \
-p 0.0.0.0:8548:8548 \
offchainlabs/nitro-node:v3.5.1-8f247fd \
--parent-chain.connection.url=<ethereum_mainnet_rpc> \
--chain.id=1625 \
--chain.name=conduit-orbit-deployer \
--http.api=net,web3,eth \
--http.corsdomain="*" \
--http.addr=0.0.0.0 \
--http.vhosts="*" \
--chain.info-json='[
{
"chain-id":1625,
"parent-chain-id":1,
"chain-name":"conduit-orbit-deployer",
"chain-config":{
"chainId":1625,
"homesteadBlock":0,
"daoForkBlock":null,
"daoForkSupport":true,
"eip150Block":0,
"eip150Hash":"0x0000000000000000000000000000000000000000000000000000000000000000",
"eip155Block":0,
"eip158Block":0,
"byzantiumBlock":0,
"constantinopleBlock":0,
"petersburgBlock":0,
"istanbulBlock":0,
"muirGlacierBlock":0,
"berlinBlock":0,
"londonBlock":0,
"clique":{"period":0,"epoch":0},
"arbitrum":{
"EnableArbOS":true,
"AllowDebugPrecompiles":false,
"DataAvailabilityCommittee":true,
"InitialArbOSVersion":11,
"InitialChainOwner":"0xd65776c5F9fA552cB5C9556B3e86bF6c376b233b",
"GenesisBlockNum":0
}
},
"rollup":{
"bridge":"0x7983403dDA368AA7d67145a9b81c5c517F364c42",
"inbox":"0x7AD2a94BefF3294a31894cFb5ba4206957a53c19",
"sequencer-inbox":"0x8D99372612e8cFE7163B1a453831Bc40eAeb3cF3",
"rollup":"0xf993AF239770932A0EDaB88B6A5ba3708Bd58239",
"validator-utils":"0x2b0E04Dc90e3fA58165CB41E2834B44A56E766aF",
"validator-wallet-creator":"0x9CAd81628aB7D8e239F1A5B497313341578c5F71",
"deployed-at":19898364
}
}
]' \
--node.data-availability.enable \
--node.data-availability.rest-aggregator.enable \
--node.data-availability.rest-aggregator.urls=https://das-gravity-mainnet-0.t.conduit.xyz \
--execution.forwarding-target=https://rpc.gravity.xyz \
--node.feed.input.url=wss://relay-gravity-mainnet-0.t.conduit.xyz \
--parent-chain.blob-client.beacon-url=<ethereum_beacon_chain_rpc> \
--validation.wasm.enable-wasmroots-check=false \
--execution.caching.archive
Monitor Logs
Monitor Logs of Docker Container
docker ps
docker logs gravity_alpha_mainet
Sync Status
Run a query to check the latest synchronized L2 block:
curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0","method":"eth_blockNumber",
"params":[],"id":83}' http://localhost:8547
Response should look like:
{"jsonrpc":"2.0","id":83,"result":"0x78811a"}
REFERENCES
Gravity Docs : Deployment Guide for Alpha Mainnet
Gravity Alpha Mainnet explorer : Block Explorer
Last updated