← Back to Nano Documentation

RaiblocksOne Installation

MAINNET • Nano Based

Prerequisites

Install Dependencies

sudo apt update && sudo apt upgrade -y && sudo apt install curl git wget htop tmux build-essential jq make lz4 gcc unzip -y

Install Docker

curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo usermod -aG docker $USER
newgrp docker

Installation

Clone Repository & Build Docker Image

git clone https://github.com/caltru1sm/raione-node.git
cd $(basename https://github.com/caltru1sm/raione-node)
docker build -t raiblocksone-node .

Initialize Node Data Directory

mkdir -p $HOME/raiblocksone-data

Run Node (Docker)

docker run -d \
  --name raiblocksone-node \
  -v $HOME/raiblocksone-data:/data \
  -p 7075:7075/udp \
  -p 7075:7075/tcp \
  -p 127.0.0.1:7076:7076 \
  raiblocksone-node
Note: Port 7075 is the node peering port (UDP/TCP). Port 7076 is the RPC port (bind to localhost only).

Check Node Status

# Check Docker container
docker ps -a | grep raiblocksone-node

# View logs
docker logs -f raiblocksone-node

# Check RPC status
curl -s https://raiblocksone-rpc.codeblocklabs.com/api/v1/version

Explorer

View network activity on the block explorer:

https://nanexplorer.com/raiblocksone

Stop & Remove Node

docker stop raiblocksone-node
docker rm raiblocksone-node
sudo rm -rf $HOME/raiblocksone-data

Download Snapshot

Download the latest ledger snapshot:

wget -O raiblocksone-snapshot.zip https://backup.codeblocklabs.com/raiblocksone/raiblocksone.zip

Restore from Snapshot

Before restoring, stop the node and extract the snapshot into the data directory:

docker stop raiblocksone-node
mv $HOME/raiblocksone-data $HOME/raiblocksone-data.bak
unzip raiblocksone-snapshot.zip -d $HOME/raiblocksone-data
docker start raiblocksone-node

Create Snapshot (CLI)

Stop the node first for a consistent snapshot, then create and restart:

docker stop raiblocksone-node
docker run --rm -v $HOME/raiblocksone-data:/data raiblocksone-node nano_node --snapshot > $HOME/raiblocksone-snapshot.ldb
docker start raiblocksone-node

Automated Snapshot Schedule

Set up a cron job to take daily snapshots:

0 3 * * * docker stop raiblocksone-node && docker run --rm -v $HOME/raiblocksone-data:/data raiblocksone-node nano_node --snapshot > $HOME/raiblocksone-data/snapshots/snapshot-$(date +\%F).ldb && docker start raiblocksone-node
Note: Snapshots contain the full ledger state. Downloading can take time depending on chain size. Always verify checksums when provided.

Container Management

View logs

docker logs -f raiblocksone-node

Restart node

docker restart raiblocksone-node

Stop node

docker stop raiblocksone-node

Start node

docker start raiblocksone-node

Rebuild image after update

cd raiblocksone-node
git pull
docker build -t raiblocksone-node .
docker stop raiblocksone-node
docker rm raiblocksone-node
docker run -d --name raiblocksone-node \
  -v $HOME/raiblocksone-data:/data \
  -p 7075:7075/udp -p 7075:7075/tcp \
  -p 127.0.0.1:7076:7076 \
  raiblocksone-node

List all containers

docker ps -a

View container resource usage

docker stats raiblocksone-node

Account

Account balance

curl -s -d '{"action":"account_balance","account":"nano_1..."}' https://raiblocksone-rpc.codeblocklabs.com

Account info

curl -s -d '{"action":"account_info","account":"nano_1..."}' https://raiblocksone-rpc.codeblocklabs.com

Account history

curl -s -d '{"action":"account_history","account":"nano_1...","count":10}' https://raiblocksone-rpc.codeblocklabs.com

Account key

curl -s -d '{"action":"account_key","account":"nano_1..."}' https://raiblocksone-rpc.codeblocklabs.com

Account representative

curl -s -d '{"action":"account_representative","account":"nano_1..."}' https://raiblocksone-rpc.codeblocklabs.com

Account weight

curl -s -d '{"action":"account_weight","account":"nano_1..."}' https://raiblocksone-rpc.codeblocklabs.com

Block

Block info

curl -s -d '{"action":"block_info","hash":"..."}' https://raiblocksone-rpc.codeblocklabs.com

Block count

curl -s -d '{"action":"block_count"}' https://raiblocksone-rpc.codeblocklabs.com

Process block

curl -s -d '{"action":"process","json_block":"true","subtype":"send","block":{...}}' https://raiblocksone-rpc.codeblocklabs.com

Network

Available supply

curl -s -d '{"action":"available_supply"}' https://raiblocksone-rpc.codeblocklabs.com

Peers

curl -s -d '{"action":"peers"}' https://raiblocksone-rpc.codeblocklabs.com

Representatives

curl -s -d '{"action":"representatives"}' https://raiblocksone-rpc.codeblocklabs.com

Node version

curl -s -d '{"action":"version"}' https://raiblocksone-rpc.codeblocklabs.com

Network bandwidth

curl -s -d '{"action":"network_bandwidth"}' https://raiblocksone-rpc.codeblocklabs.com

Ledger

Account count

curl -s -d '{"action":"account_count"}' https://raiblocksone-rpc.codeblocklabs.com

Frontiers

curl -s -d '{"action":"frontiers","account":"nano_1...","count":10}' https://raiblocksone-rpc.codeblocklabs.com

Ledger

curl -s -d '{"action":"ledger","account":"nano_1...","count":10,"modified_since":0}' https://raiblocksone-rpc.codeblocklabs.com

Wallet

Wallet balance

curl -s -d '{"action":"wallet_balances","wallet":"..."}' https://raiblocksone-rpc.codeblocklabs.com

Create account in wallet

curl -s -d '{"action":"account_create","wallet":"..."}' https://raiblocksone-rpc.codeblocklabs.com

Daemon

Start daemon

nano_node --daemon

Daemon version

nano_node --version

Help

nano_node --help

Diagnostics

nano_node --diagnostic

Account Management

Create account

nano_node --account_create --wallet=...

List accounts

nano_node --wallet_list

Account info

nano_node --account_info --account=nano_1...

Account key

nano_node --account_key --account=nano_1...

Network & Node

Peers

nano_node --peers

Block count

nano_node --block_count

Node status

nano_node --status

Validate chain

nano_node --validate_chain

Snapshot

nano_node --snapshot

Database

Backup database

nano_node --backup

Database version

nano_node --database_version

Vacuum database

nano_node --vacuum