🐳Docker

Authors: [ Ankur | Dapplooker]

System Requirements

CPU
OS
RAM
DISK

2 vCPU

Ubuntu 22.04

4 GB

200 GB

Pre-requisite

Before starting, clean the setup then update and upgrade. Install following:

  • Docker

Commands

sudo apt update -y && sudo apt upgrade -y && sudo apt auto-remove -y
sudo apt install docker.io ufw -y jq -y

Firewall Settings

Check status & enable UFW

sudo ufw enable
sudo ufw status verbose

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 9944 

Setup Instructions

1

Pull Docker Image

Pull the madara image from the github container registry (ghr):

docker pull ghcr.io/madara-alliance/madara:latest
docker tag ghcr.io/madara-alliance/madara:latest madara:latest
docker rmi ghcr.io/madara-alliance/madara:latest
2

Start the Node

docker run -d \
  -p 9944:9944 \
  -v /root/madara:/tmp/madara \
  --name Madara \
  madara:latest \
  --name Madara \
  --full \
  --network mainnet \
  --rpc-external \
  --l1-endpoint https://ethereum-rpc.publicnode.com # Replace with your RPC_Endpoint

Update https://ethereum-rpc.publicnode.com with you Ethereum RPC endpoint

Monitoring

Monitor Logs of Docker Container

docker ps 
docker logs Madara

Sync Status

Latest Block

curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0", "method":"starknet_blockNumber", "params":[], "id":1}' http://localhost:9944

Response should look like:

{"jsonrpc":"2.0","result":1203395,"id":1}

Syncing Status

curl -H "Content-Type: application/json" -X POST --data '{"jsonrpc":"2.0", "method":"starknet_syncing", "params":[], "id":1}' http://localhost:9944 | jq

Response should look like:

{
  "jsonrpc": "2.0",
  "result": {
    "starting_block_hash": "0x47c3637b57c2b079b93c61539950c17e868a28f46cdef28f88521067f21e943",
    "starting_block_num": 0,
    "current_block_hash": "0x2e0e03d1735d4c84e5caac50e7e090368a368a2ca307476fff199e68029f84a",
    "current_block_num": 1203387,
    "highest_block_hash": "0x2e0e03d1735d4c84e5caac50e7e090368a368a2ca307476fff199e68029f84a",
    "highest_block_num": 1203387
  },
  "id": 1
}

REFERENCES

Github Repository
Block Explorer

Last updated