Running a node
This document contains step-by-step instructions for running a gmeme 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 Gmeme Binary
Build the source
Get memecore-gmeme source.
Building gmeme
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. Starting a MEME Node:
Mainnet:
Formicarium Testnet:
Common Additional Parameters:
--http
- Enable the HTTP-RPC server--http.api
- APIs offered over the HTTP-RPC interface (e.g., eth,net,web3)--http.addr
- HTTP-RPC server listening interface (default: "localhost")--http.port
- HTTP-RPC server listening port (default: 8545)--ws
- Enable the WS-RPC server--ws.port
- WS-RPC server listening port (default: 8546)
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 MemeCore Network, 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.
Note: gmeme is backwards compatible with geth. For any information not covered in gmeme documentation, you can refer to geth documentation.
This script expects node DB directory to be ./node/node1
.
Mainnet:
Formicarium Testnet:
Note: To run on the Formicarium Testnet, simply add the --formicarium flag when executing gmeme. For mainnet, run it without this flag.
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
.
Mainnet:
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.)
NOTE: The description of the password file is only an example, and you should use other technical methods to manage it securely.
Last updated