An Easy Guide to Setting Up EOS Blockchain Node

Published by : Rahbar | Jan-31-2019

  • EOS is a blockchain (and a coin) used to build ‘smart’ Smart Contracts like Ethereum but it’s much faster than it.

    EOS is a token of account eosio.token and represents itself like a coin of EOS Platform.

    Any user who wants to use the EOS platform for creating an account, transfer token, and issue token must have EOS token for successfully performing above actions.

    Every user on the EOS Blockchain platform holds amount (in EOS ) for stake network-bandwidth, net-usage, and RAM.

    So, only an existing user could create a new user as they purchase above- defined asset and gives them to newly created users (for independent EOS wallet).

    Here’s a guide that has steps for setting up EOS Node jungle2 testnet.

    1-> For Setting Up EOS Node (Testnet), follow this step:

    create and folder
    mkdir /opt/EOSIO
    cd /opt/EOSIO
    git clone --recursive
    cd eos
    git checkout v1.5.2
    git submodule update --init --recursive
    ./ -s EOS


    This may take a while so don’t panic.

    Now copy the old version

    mkdir /opt/bin
    mkdir /opt/bin/v1.5.2
    cp /opt/EOSIO/eos/build/programs/nodeos/nodeos /opt/bin/v1.5.2/
    cp /opt/EOSIO/eos/build/programs/cleos/cleos /opt/bin/v1.5.2/
    cp /opt/EOSIO/eos/build/programs/keosd/keosd /opt/bin/v1.5.2/
    ln -sf /opt/bin/v1.5.2 /opt/bin/bin


    Now update source version

    cd /opt/EOSIO/eos
    git checkout -f
    git branch -f
    git pull
    git checkout v1.5.2   
    git submodule update --init --recursive   
    ./ -s EOS
    mkdir /opt/bin/v1.5.2
    cp /opt/EOSIO/eos/build/programs/nodeos/nodeos /opt/bin/v1.5.2/
    cp /opt/EOSIO/eos/build/programs/cleos/cleos /opt/bin/v1.5.2/
    cp /opt/EOSIO/eos/build/programs/keosd/keosd /opt/bin/v1.5.2/
    ln -sf /opt/bin/v1.5.2 /opt/bin/bin


    The environment of EOS has been set up successfully.
    Now, we will set up EOS jungle testnet.

    mkdir /opt/Jungle2Testnet
    cd /opt/Jungle2Testnet
    git clone ./


    2- For setting up EOS node, we need an EOS account. We can create an EOS account from here;

    And click Create account

    Above link needs an account name and public key
    You can find a unique account name and private key from this link.

    Now edit config.ini file that is present in the folder

    And update that file following these details.

    # update here your producer name and that key

    producer-name = oodlestest24
    signature-provider = pub-key=priv-key

    http-server-address = # your node address
    p2p-listen-endpoint =
    p2p-server-address = *************:9876 # your public ip

    chain-state-db-size-mb = 16384
    reversible-blocks-db-size-mb = 1024

    contracts-console = true

    p2p-max-nodes-per-host = 100

    wasm-runtime = wabt
    http-validate-host = false
    verbose-http-errors = true
    abi-serializer-max-time-ms = 2000

    access-control-allow-origin = *
    # access-control-allow-headers =
    # access-control-max-age =
    # access-control-allow-credentials = false

    # https-private-key-file =

    allowed-connection = any

    # allowed-connection = specified
    # peer-private-key = [“!!NEW_KEY_PUB!!”,”!!NEW_KEY_PRIV!!”] #create new key for private peers
    # peer-key = “!![PUBKEY]!!”

    max-clients = 150
    connection-cleanup-period = 30
    network-version-match = 0
    sync-fetch-span = 2000
    enable-stale-production = false

    max-implicit-request = 1500
    pause-on-startup = false
    max-irreversible-block-age = -1
    txn-reference-block-lag = 0

    mongodb-queue-size = 256
    # mongodb-uri =

    plugin = eosio::producer_plugin
    #plugin = eosio::producer_api_plugin
    plugin = eosio::chain_plugin
    plugin = eosio::chain_api_plugin
    plugin = eosio::history_plugin
    plugin = eosio::history_api_plugin


    #EXAMPLE peers please check last one on
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =
    p2p-peer-address =

    Now save above file and then:

    You need to use two port

    1- 8888 for eos blockchain-communication
    2- 3000 for your eos wallet

    For starting the wallet port,
    type these command

    cd /opt/Jungle2Testnet

    For starting the node, type this command;

    ./ –delete-all-blocks –genesis-json genesis.json //

    This command will fire only once. If you use this command another time
    then it will delete all downloaded blocks.

    Now you can check your node information by cleos command or use this link that is running your local system.

    By command ./ get info

    The response is like this

    “server_version”: “3fddb727”,
    “chain_id”: “e70aaab8997e1dfce58fbfac80cbbb8fecec7b99cf982a9444273cbc64c41473”,
    “head_block_num”: 11365262,
    “last_irreversible_block_num”: 11364934,
    “last_irreversible_block_id”: “00ad6a4636dacefa87c2aa086c9aa361b6c9899b02ed0e4435682f5d7a1c3d69”,
    “head_block_id”: “00ad6b8e5c191fd7ea0c97106779ba56b4eb176cecc85e712d369b4049b736c3”,
    “head_block_time”: “2019-01-30T06:03:17.500”,
    “head_block_producer”: “mosquitometa”,
    “virtual_block_cpu_limit”: 200000000,
    “virtual_block_net_limit”: 1048576000,
    “block_cpu_limit”: 192625,
    “block_net_limit”: 1048352,
    “server_version_string”: “v1.6.0”

    By browser


    This will return the node info.

    So the setup is complete and it will take time for syncing all blocks that depend on block height.

    Now you need to import your EOS account that is present in EOS blockchain.

    Firstly, you need to create a default wallet.

    cleos Wallet Create

    It will generate a default wallet and give you a password. Store that password securely.

    Now, import your existing wallet in this wallet. Use the following command;
    cleos wallet import ********* (paste here your private key)

    cleos Wallet Keys

    It will show wallet keys.

    For another cleos command, you can check this link

    For integrating EOS in java you can use this link

    Set-up of main-net EOS after setting up EOS Node Testnet

    First set-up environment from main-net EOS, following this link;

    Sometimes it is difficult to set-up main-net because of its syncing issue
    So, there is a short-cut to set-up the EOS main-net.

    But, there are some limitations in it because here we are going to use the snapshot for the current date, so it will start syncing from current data. That means we haven’t held the old data block (it means we don’t have any record of previous-date).

    For that, use this process to set up mainnet if you don’t need the previous transaction-info.

    cd /opt/EOSmainNet
    rm -rf state
    # Download the latest snapshot
    wget $(wget --quiet "" -O- | jq -r '.data[0].s3') -O snapshot.tar.gz
    # Uncompress
    tar xvzf snapshot.tar.gz
    # Start the chain and sync from the provided snapshot
    ./ --snapshot "$(ls -t snapshots/*.bin | head -n1)"
    # Tail the logs to watch the sync in all its glory
    tail -f log.txt


    You can check other date snapshots from this link

    Check out how Oodles can assist you with EOS blockchain development services to develop a range of fast, secure, and efficient solutions for diverse industries.

Leave a Comment

Name is required

Comment is required

Recaptcha is required.

No Comments Yet.

More From Oodles

Request For Proposal

By using this site, you allow our use of cookies. For more information on the cookies we use and how to delete or block them, please read our cookie notice.

We would love to hear from you!

Oodles | Blockchain Development Company

Please enter a valid Phone Number

Please remove URL from text

Recaptcha is required.