GithubHelp home page GithubHelp logo

mint-node's Introduction

Mint

Mint node

It currently supports Optimism’s open-source OP Stack.

This repository contains the relevant Docker builds to run your own RPC node for Mint Blockchain.

Granite upgrade

The Granite upgrade on Mint Mainnet will be activated at 1726070401 - Wed 11 Sep 2024 16:00:01 UTC

Node operators need to update your client before the activation date.

step1:stop node and pull latest repo

docker compose down

git pull

step2:confirm flag config

Confirm that both op-geth-entrypoint and op-node-entrypoint are set with --override.fjord=1720627201 and --override.granite=1726070401

Confirm that da_challenge_address, da_challenge_window, da_resolve_window, and use_plasma have been deleted from rollup.json

step3:delete old docker image

docker rmi $(docker images -q)

step4:start node

docker compose up 

Details of Granite upgrade

Network op-node op-geth
Mint Mainnet v1.9.1 v1.101408.0

Software requirements

Hardware requirements

We recommend you have this configuration to run a node:

  • at least 2 Core * 8 GB RAM
  • an SSD drive with at least 100 GB free

Usage

  1. Select the network you want to run and set CONDUIT_NETWORK env variable. Example:
#  for Mint Mainnet

  export CONDUIT_NETWORK=mint-mainnet-0

  1. ensure you have an Ethereum L1 full node RPC available:
  • setting OP_NODE_L1_ETH_RPC. If running your own L1 node, it needs to be synced before the specific Conduit network will be able to fully sync.
  • You also need a Beacon API RPC which can be set in OP_NODE_L1_ETH_RPC.

Example:

# .env file
OP_NODE_L1_ETH_RPC=https://eth-mainnet.g.alchemy.com/v2/<your key>
OP_NODE_L1_BEACON=<beacon api rpc>
  1. Start the node!
docker compose up --build
  1. You should now be able to curl your node:
curl -d '{"id":0,"jsonrpc":"2.0","method":"eth_getBlockByNumber","params":["latest",false]}' -H "Content-Type: application/json" http://localhost:8545

Note: Some L1 nodes (e.g. Erigon) do not support fetching storage proofs. You can work around this by specifying --l1.trustrpc when starting op-node (add it in op-node-entrypoint and rebuild the docker image with docker compose build.) Do not do this unless you fully trust the L1 node provider.

You can map a local data directory for op-geth by adding a volume mapping to the docker-compose.yaml:

services:
  geth: # this is Optimism's geth client
    ...
    volumes:
      - ./geth-data:/data

Snapshots

Not yet available. We're working on it

Syncing

Sync speed depends on your L1 node, as the majority of the chain is derived from data submitted to the L1. You can check your syncing status using the optimism_syncStatus RPC on the op-node container. Example:

command -v jq  &> /dev/null || { echo "jq is not installed" 1>&2 ; }
echo Latest synced block behind by: $((($( date +%s )-\
$( curl -s -d '{"id":0,"jsonrpc":"2.0","method":"optimism_syncStatus"}' -H "Content-Type: application/json" http://localhost:7545 | jq -r .result.unsafe_l2.timestamp))/60)) minutes

Network Stats

You can see how many nodes you are connected with the following command:

curl -d '{"id":0,"jsonrpc":"2.0","method":"opp2p_peerStats","params":[]}' -H "Content-Type: application/json" http://localhost:7545

Troubleshooting

If you encounter problems with your node, please open a GitHub issue or reach out on our Discord:

mint-node's People

Contributors

lyl150 avatar zhwindy avatar

Stargazers

Timmy Sheylock avatar Adieska avatar  avatar

Watchers

 avatar ZK avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.