Old CodeBlockLabs
VPS Recomendation
  • Home
  • 🌹Social Media
  • 🚰Testnet Faucet List
  • 🚰Mainnet Faucet List
  • 🔥Mainnet
    • Akash
    • Arcadia (Paw)
      • Installation
      • RPC Command
      • CLI
      • Fast Sync
    • Arkhadian
      • Installation
      • Update
      • Useful Commands
    • Banano
      • Installation
      • Node Configuration
      • RPC Command
      • CLI
      • Useful Command
    • DO Network
      • Install & Update
      • RPC Documentation
    • Kadena
      • Installation
      • Mining
    • Massa
      • Installation
    • Newrl
      • Installation
      • Useful Command
      • Update
    • Q Blockchain
      • Installation
      • Block stuck?
    • RaiblocksOne
      • Installation
      • Update
      • RPC Command
    • Raicoin
      • Installation
    • SGE
      • Installation
      • Update
      • Useful Commands
  • 💎Testnet
    • 0G Labs
      • Installation
      • Useful Commands
    • 5ire Chain
      • Installation
      • WASM Contract Deployment
    • Avail
      • Installation
    • BEVM
      • Installation
        • Docker
        • Binary
    • Blockx
      • Installation
      • Useful Commands
      • Incentivized Task
    • Elys
      • Installation
      • Useful Commands
    • Empeiria
      • Installation
      • Snapshot
      • Useful Commands
        • Wallet Management
        • Validator Management
        • Node Management
        • Governance
    • Impact Protocol
      • Installation
    • Erbie (wormholes)
      • Installation
      • RPC Documentation
      • Debug
    • Inery
      • Installation
      • Create Token
      • Value Contract
      • IneryCRUD
      • IneryPHP
      • Snapshots
    • Mantra
      • Installation
      • Useful commands
    • Naruno
      • Baklava Testnet
    • Nolus Protocol
      • Installation
      • Update
      • Snapshots
      • Relayer
      • Useful Commands
    • Noria
      • Installation
      • Update
      • State Sync
      • Useful Commands
    • Nibiru
      • Installation
      • Update
      • Useful Commands
    • Nulink
      • Installation
    • Ojo Network
      • Installation
      • Update
      • Useful Commands
    • PowerLoom
      • Pretest Task
    • The Power
      • Installation
    • Transformers Chain
      • Install & Update
      • RPC Documentation
  • âš¡VPS Provider
    • Contabo
      • Links To Provider
      • Promotion / Coupon
    • Vultr
      • Link To Provider
      • Promotion / Coupon
  • 😇solution
    • Docker
    • EVM Wallet by PrivateKey
    • Multiple Go
Powered by GitBook
On this page
  • Installation (Docker)
  • Installation (sourcecode)
  • install dependencies
  • create swap (only if your nodes are not having a good configuration)
  1. Mainnet
  2. Banano

Installation

install bananode on your server

Installation (Docker)

Install docker from https://docs.docker.com/engine/install/ubuntu/

then use command below to install and run banano nodes automatically on port 6900.

docker run --restart=unless-stopped -d -p 6900:6900-v ~:/root bananocoin/banano

or if you want to use different folder or different port:

docker run --restart=unless-stopped -d \
  -p 7071:7071 \
  -p [::0]:7072:7072 \
  -p [::0]:7074:7074 \
  -v /mnt/blockstorage:/root \
  bananocoin/banano

just change the data on -v and port on -p (it's also specified more port for accessing nodes from outside)

To check logs, use command:

docker log

Installation (sourcecode)

install dependencies

sudo apt update;
sudo apt upgrade -y;
sudo apt-get install -y git cmake make g++ curl wget python-dev;
sudo apt install python3-pip;
sudo pip install cmake-format;

create swap (only if your nodes are not having a good configuration)

sudo fallocate -l 4G /swapfile;
sudo chmod 600 /swapfile;
sudo mkswap /swapfile;
sudo swapon /swapfile;
sudo nano /etc/fstab;

# add the below line to /etc/fstab
/swapfile swap swap defaults 0 0

Installing precompiled Boost

sudo apt install -y libboost-all-dev

Building static Boost

automatic build

sudo banano_build/util/build_prep/bootstrap_boost.sh --m

**the --m flags are optional, it may reduce time, but may break Boost for other use cases than building the bananode

manual build

wget https://netix.dl.sourceforge.net/project/boost/boost/1.70.0/boost_1_70_0.tar.gz   
tar xzvf boost_1_70_0.tar.gz   
cd boost_1_70_0   
./bootstrap.sh --with-libraries=system,thread,log,filesystem,program_options,coroutine,context  
./b2 --prefix=/usr/local/boost link=static install   
cd ..

Cloning the Bananode's git repository

check out master branch

git clone --recursive https://github.com/BananoCoin/banano.git banano_build   

check out V23.3 branch.

git clone --branch v23.3 --recursive https://github.com/BananoCoin/banano.git banano_build

NOTE: rocksdb needs to be updated or you get a compiler error regarding block_rep The below code updates rocksdb to the v24 version of rocksdb:

cd banano_build
cd rocksdb
git checkout 79f08d7ffa6d34d9ca3357777bcb335884a56cfb
cd ..
cd ..

check out V24 branch.

git clone --branch v24 --recursive https://github.com/BananoCoin/banano.git banano_build

Building bananode

cd banano_build   

git submodule update --init --force --recursive

cmake -G "Unix Makefiles"   
make bananode

Configuring bananode

## copy the node executable into the parent directory
cp bananode ../bananode;
cd ..;
## check if the freshly compiled executable executes 
./bananode --diagnostics;
## generate default config files with all available options. You can then customize the config files, for example to activate RPC or activate voting.
mkdir BananoData;
./bananode --generate_config node > /root/BananoData/config-node.toml 
./bananode --generate_config rpc > /root/BananoData/config-rpc.toml
cp ./banano_build/docker/node/config/config-* BananoData;
## you can delete the banano_build directory now, if you want

Running the bananode

# start the node in the background
screen -dmSL bananode ./bananode --daemon;

# check that it has peers (firewall may prevent peers)
curl -g -d '{"action": "peers"}' 'localhost:7072';

# check local block count (RPC)
curl -g -d '{"action": "block_count"}' 'localhost:7072';

# check local block count (CLI)
./bananode --debug_block_count;

# check kalium block count (RPC)
curl -g -d '{"action": "block_count"}' 'https://kaliumapi.appditto.com/api';

# check how many accounts are still being processed.
cat BananoData/log/* | grep -e 'accounts in pull queue' | tail -n 2
PreviousBananoNextNode Configuration

Last updated 2 years ago

🔥