Installation Guide
This guide covers all methods for installing and running a Viction node, including building from source, using pre-built binaries, and Docker deployment.System Requirements
Minimum Requirements
- CPU: 2+ cores
- RAM: 4GB minimum, 8GB recommended
- Storage: 100GB+ SSD (blockchain grows over time)
- Network: Stable internet connection
- OS: Linux, macOS, or Windows
Software Prerequisites
- Linux
- macOS
- Windows
- Go 1.18 or higher
- GCC compiler
- Git
Ubuntu/Debian
CentOS/RHEL
Installation Methods
Method 1: Build from Source
Building from source gives you the latest code and full control over the build process.1
Install Go
2
Clone Repository
3
Build Binary
Use the build script to compile the This compiles and installs the binary to
tomo client:build/bin/tomo.The build process may take several minutes depending on your system.
4
Add to PATH (Optional)
Make
tomo available system-wide:Linux/macOS
Add to PATH manually
5
Verify Installation
Method 2: Pre-built Binaries
The fastest way to get started is using pre-compiled binaries.1
Download Binary
2
Verify Installation
Method 3: Docker Installation
Docker provides isolated, reproducible deployments.1
Install Docker
2
Build Docker Image
Option A: Build from sourceOption B: Pull pre-built image
3
Prepare Directories
Create directories for persistent data:
Account Management
Before running a node, you need an account to unlock. Viction uses thetomo account command for keystore management.
Create a New Account
Import Existing Account
If you have a private key, import it:List Accounts
Update Account Password
Network Configuration
Mainnet Configuration
Connect to Viction mainnet (Chain ID: 88):- Chain ID:
88 - Network ID:
88 - Block time: 2 seconds
- Epoch: 900 blocks
- Consensus: Proof of Stake Voting (PoSV)
Testnet Configuration
Connect to Viction testnet (Chain ID: 89):- Chain ID:
89 - Network ID:
89 - Use
--tomo-testnetflag - Same consensus parameters as mainnet
Full Node Configuration
A complete full node configuration with all features enabled:Configuration Breakdown
Core Settings
Core Settings
Network Settings
Network Settings
RPC Settings
RPC Settings
eth: Ethereum JSON-RPCnet: Network informationweb3: Web3 utilitiespersonal: Account managementdb: Database accessdebug: Debug and tracing
WebSocket Settings
WebSocket Settings
Sync & Storage
Sync & Storage
fast: Fast sync (downloads state snapshots)full: Full verification of all blockslight: Light client mode (minimal storage)
full: Regular node (pruned state)archive: Archive node (full historical state)
Mining/Staking Settings
Mining/Staking Settings
Monitoring
Monitoring
Archive Node Configuration
An archive node stores complete historical state:Docker Compose Setup
For production deployments, use Docker Compose:docker-compose.yml
Systemd Service (Linux)
Create a systemd service for automatic startup:/etc/systemd/system/viction.service
Firewall Configuration
Open required ports:UFW (Ubuntu)
Firewalld (CentOS/RHEL)
Troubleshooting
Node Won’t Start
Account unlock fails
Account unlock fails
Error:
Failed to unlock accountSolution:- Verify password file exists and is readable
- Check password is correct
- Ensure keystore path is correct
- Try
--unlock 0or--unlock <address>
Port already in use
Port already in use
Error:
bind: address already in useSolution:- Check if another instance is running:
ps aux | grep tomo - Change ports with
--port,--rpcport, or--wsport - Kill existing process:
pkill tomo
Out of disk space
Out of disk space
Error:
write: no space left on deviceSolution:- Check disk usage:
df -h - Clean old logs
- Move datadir to larger partition
- For full nodes, consider pruning with
--gcmode full
Sync Issues
Stuck at specific block
Stuck at specific block
Solution:
- Check if your version is up to date
- Verify network connectivity
- Try different bootnodes
- Increase peer count:
--maxpeers 50
Too few peers
Too few peers
Solution:
- Check firewall allows port 30303
- Enable NAT traversal:
--nat upnp - Add explicit bootnodes:
--bootnodes <enode-urls> - Set external IP:
--nat extip:<your-public-ip>
Next Steps
Quick Start
Get your node running quickly
Run a Masternode
Become a validator and earn rewards
Network Info
Network parameters and endpoints
GitHub Repository
Source code and issues
For advanced configuration, custom genesis blocks, or private networks, refer to the full documentation.