How to Join the Nebulas Mainnet

Introduction

The Nebulas Mainnet 2.0 (Nebulas Nova) 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:

  • NBRE: The Nebulas Blockchain Runtime Environment is the platform for running Nebulas Protocol Representation, such as the DIP, the NR, etcetera.
  • NEB: The main process of the Nebulas Mainnet. NEB and NBRE run in standalone processes, and communicate through IPC.

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.2.205.12/tcp/8680/ipfs/QmQK7W8wrByJ6So7rf84sZzKBxMYmc1i4a7JZsne93ysz5","/ip4/52.56.55.238/tcp/8680/ipfs/QmVy9AHxBpd1iTvECDR7fvdZnqXeDhnxkZJrKsyuHNYKAh","/ip4/13.251.33.39/tcp/8680/ipfs/QmVm5CECJdPAHmzJWN2X7tP335L5LguGb9QLQ78riA9gw3"]

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 your config.conf file.

API List

Main Endpoint:

API URL Protocol
RESTful https://mainnet.nebulas.io/ HTTP

More Nebulas APIs at RPC.

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.