Running a node
This document contains step-by-step instructions for running a geth node in MemeCore Network.
Hardware Requirements
The following are the minimum hardware requirements:
CPU with 2+ cores
4GB RAM
200GB free storage space
8 MBit/sec download Internet service
1. Building Geth Binary
Build the source
Get memecore-geth source.
Building geth
requires both a Go (version 1.19 or later) and a C compiler. Feel free to install them with the package manager of your choice.
Once the dependencies are installed, run
or, build the full suite of utilities:
2. Initializing Geth Database
Download the genesis.json
Formicarium Testnet genesis.json
To create a blockchain node that uses this genesis block, first use geth init to import and set the canonical genesis block for the new chain. This requires the path to the configuration file to be passed as an argument.
--datadir
is the target destination for the node database. Here we use ./nodes/node1
:
3. Initializing Node Account
You can create a new account or import an existing account for your node operation, if you need. RPC nodes don't need node account.
Create a new account
Create your node account with the following command. A password is required to be entered during the process. The resulting account is placed in the specified --datadir
under the keystore
path.
Import your existing account
Import your existing account with the private key and remember to replace the ./your/privateKey.txt
parameter.
4. Running RPC Node
A RPC node is a network member that does not participate in the consensus process. This node can be used to interact with the MimNetwork, including: creating accounts, transferring funds, deploying and interacting with contracts, and querying node APIs.
You may need to change the P2P/HTTP/RPC/WS
ports to avoid conflicts. Please note that the port configuration for the JSON-RPC interface should be set to httpport, not rpcport. You can refer to https://geth.ethereum.org/docs/fundamentals/command-line-options for more details about start options.
This script expects node DB directory to be ./node/node1
.
Formicarium Testnet:
5. Running Validator Node
A validator node participates in the PoSA consensus. If you want to register as a candidate for PoSA validators, you need to run a miner node.
You may need to change the P2P/HTTP/RPC/WS
ports to avoid conflicts. Please note that the port configuration for the JSON-RPC interface should be set to httpport, not rpcport. You can refer to https://geth.ethereum.org/docs/fundamentals/command-line-options for more details about start options.
This script expects node DB directory to be ./node/node1
.
Formicarium Testnet:
After launch geth client, you need to register your validator account to our system contract (0x1234000000000000000000000000000000000002
) with 7,000,000 M. (Validator registering is locked yet.)
Last updated