gitlab.com/lightnet1/evrynet-node@v1.1.0/MINING_TENDERMINT.md (about)

     1  # How to start 1 nodes with miner in Tendermint
     2  
     3  1. Build and export to `PATH`
     4      ```shell
     5      $ go build ./cmd/gev
     6      $ go build ./cmd/bootnode
     7      $ go build ./cmd/puppeth
     8      $ export PATH=$(pwd):$PATH
     9      ```
    10  
    11  2. Create a working directory for 1 validator node
    12      ```shell
    13      $ mkdir validator-node
    14      ```  
    15  
    16  3. In working directory create a folder containing nodekey
    17      ```shell    
    18      $ mkdir -p validator-node/geth
    19      ```  
    20  
    21  4. Generate node key and copy it into folder `validator-node/geth`
    22      ```shell
    23      $ bootnode --genkey=nodekey
    24      $ cp nodekey validator-node/geth
    25      ```
    26  
    27  5. Generate tendermint genesis.json from pupeth
    28       ```shell
    29      $ ./puppeth    
    30      ```
    31  
    32  Following steps to generate tendermint genesis.json. In step ask for first validator, enter address from nodekey, which is generated above
    33  
    34  6. Init chaindata with tendermint genesis.json
    35      ```shell
    36      $ ./gev init genesis.json --datadir validator-node
    37      ```
    38  
    39  7. Now we will start node and mine
    40      ```shell    
    41      $ ./gev --datadir validator-node --rpc --rpcaddr "127.0.0.1" --rpcport "8545" --rpc --rpccorsdomain "*" console 
    42      $ miner.start()
    43      ```
    44      A node will generate block and seal every 1 second (default config). To config for this blockperiod, when start node, you can config flag, for example: ```--tendermint.blockperiod 10``` (10 seconds)