How to Join the Nebulas Mainnet¶
Introduction¶
The Nebulas Mainnet 3.0.0 (Nebulas Voyager) has been released. This tutorial will teach you how to join and work with the Nebulas Mainnet.
Build¶
The Nebulas Mainnet‘s executable file and dependant libraries need to be built first. Several important modules are highlighted below:
- NEB: The main process of the Nebulas Mainnet.
Details of building the modules can be found in tutorials.
Configuration¶
The Mainnet configuration files are in folder mainnet/conf
, including
genesis.conf¶
All configurable information about genesis block is defined in genesis.conf, including
- meta.chain_id: chain identity
- consensus.dpos.dynasty: the initial dynasty of validators
- token_distribution: the initial allocation of tokens
Attention: DO NOT change the genesis.conf.
config.conf¶
All configurable information about runtime is defined in config.conf.
Please check the template.conf
to find more details about the runtime configuration.
Tips: the official seed node info is as follows,
seed:["/ip4/52.76.103.107/tcp/8680/ipfs/Qmbi1NVTYHkeuST2wS3B3aHiTLHDajHZpoZk5EDpAXt9H2","/ip4/52.56.55.238/tcp/8680/ipfs/QmVy9AHxBpd1iTvECDR7fvdZnqXeDhnxkZJrKsyuHNYKAh","/ip4/34.198.52.191/tcp/8680/ipfs/QmQK7W8wrByJ6So7rf84sZzKBxMYmc1i4a7JZsne93ysz5"]
Miner config¶
Nodes can participate in mining and share rewards after signing up for mining. The miner node needs to turn on the mine switch and configure both the miner address and reward address(coinbase).
miner config example:
chain {
# mainnet chainID
chain_id: 1
# mainnet datadir, should be different with private chain
datadir: "mainnet/data.db"
keydir: "keydir"
# mainnet genesis.conf
genesis: "mainnet/conf/genesis.conf"
# mainnet dynasty.conf
dynasty: "mainnet/conf/dynasty.conf"
# start mine
start_mine: true
# receive the mining award, must change to your address
coinbase: "n1XkoVVjswb5Gek3rRufqjKNpwrDdsnQ7Hq"
# block signature address, needs to be placed in the node's configuration `keydir`. Also make sure that the address is the node address at the time of registration
miner: "n1FF1nz6tarkDVwWQkMnnwFPuPKUaQTdptE"
#
passphrase: "passphrase"
signature_ciphers: ["ECC_SECP256K1"]
}
Synchronization¶
Since Nebulas mainnet is running there for certain period of time, it will take quite some time to sync all the mainnet data from scratch.
For developers‘ convenience, we provided a offline data package, which already includes the data of more than 1 million blocks, you can download the package directly by following either link below (choose whichever is faster for you):
Please note that, the data package should be put under the same path of “datadir“ as specified in yourconfig.conf
file.
API List¶
Main Endpoint:
API | URL | Protocol |
---|---|---|
RESTful | https://mainnet.nebulas.io/ | HTTP |
- GetNebState : returns nebulas client info.
- GetAccountState: returns the account balance and nonce.
- Call: execute smart contract local, don‘t submit on chain.
- SendRawTransaction: submit the signed transaction.
- GetTransactionReceipt: get transaction receipt info by tansaction hash.
More Nebulas APIs at RPC.
Tutorials¶
English¶
- Installation (thanks Victor)
- Sending a Transaction (thanks Victor)
- Writing Smart Contract in JavaScript (thanks otto)
- Introducing Smart Contract Storage (thanks Victor)
- Interacting with Nebulas by RPC API (thanks Victor)
Contribution¶
Feel free to join the Nebulas Mainnet. If you have found something wrong, please submit an issue or submit a pull request to let us know, and we will add your name and URL to this page as soon as possible.