Viction
  • Getting Started
  • General
    • Overview
    • Viction Blockchain
      • PoSV Consensus
      • Comparison
    • Staking
      • Staking Requirements
      • Staking Rewards
      • How to stake on Viction Wallet
    • Network Information
      • Viction Mainnet
      • Viction Testnet
    • Viction RPC API
  • Smart Contract Development
    • Solidity
      • A Simple Smart Contract
      • Solidity by Example
    • Standards & Specification
      • VRC25 Specification
      • VRC725 Specification
    • IDEs and Tools
      • Remix
      • Ethers.js
      • web3.js
      • thirdweb CLI
    • Deployment & Verification
      • Hardhat
      • Foundry
  • DApp Development
    • Integration
      • Exchange/Wallet integration
      • VRC25 Exchange/Wallet integration
      • Viction Staking Governance
      • VIC ZeroGas
      • VRRF
    • Data and analytics
    • Embedded Wallet (MPC)
    • Walkthrough: Build a Dapp on Viction
      • Setup Environment
      • Write the Smart Contract
      • Interacting with the Dapp in a browser
  • Masternode
    • Requirements
    • Run a Full Node
      • Binary
      • Create a Viction Masternode
      • Tmn
      • Docker
    • Apply Your Node
    • Slashing Mechanism
    • Chain Data Snapshots
    • Troubleshooting
  • Viction Wallet
    • User Guide
      • Authentication
      • How to create a new wallet
      • How to restore a wallet?
      • Wallet settings
      • Send & Receive Tokens
      • Add custom token
      • Manage Tokens
      • Send NFT
      • General settings
    • Developer Guide
    • Privacy Policy
    • Term and Services
  • Viction Bridge
    • Spacegate
    • Arken Bridge
    • Hyperlane
  • Viction Data Availability
    • Viction DA RPC API
    • DA Integration Use cases
      • Simple Guide for Integrating OP Stack Rollup with Viction DA Layer
  • How to
    • How to Connect to Viction Blockchain
      • Coin98 Super Wallet
      • Metamask
      • Ledger
    • How to troubleshoot when the node is up but couldn't begin to sync block
    • How to Vote for Viction Saigon Network Upgrade Proposal
    • How to issue a token via VICIssuer
    • How to verify if a contract has been issued via VICIssuer
    • How to deploy the VRC725 contract
    • How to apply ZeroGas for VRC725 contract
    • How to Migrate Dapps from Ethereum
    • How to register Token or NFT logo on Vicscan
    • How to verify a contract on Vicscan
    • How to confirm a project on Vicscan
    • How to check if a token is gas sponsored on Viction
    • How to verify gas sponsored transactions
    • How to create Telegram Mini Apps
    • How to use VictionSafe (Multisig)
  • FAQ
    • APIs
    • General
      • Viction
      • Ecosystem
      • VIC - Economics
      • Contact & Support
    • Masternodes and Voting
      • Masternodes
      • Voter
    • Products
      • VicScan (Explorer)
      • VicMaster
      • VicStats
      • VicIssuer
        • How to Verify & Publish Contract Source Code on VicScan
      • Viction Wallet
      • Viction Data Availability Network
  • Legal
    • Terms of Use
    • Privacy Policy
  • Whitepaper and Research
  • Archive
    • TOMOE
    • How to Deploy a VRC25 Token on Viction
    • How to deploy an ICO smart contract on Viction
    • How to deploy an NFT token
    • An Example of Building a Dapp on Viction
    • Migrate Ethereum Dapp to Viction
    • TomoMasterDAO
      • Introduction
      • Governance model
        • On-Chain vs Off-Chain Voting
        • Board
        • Proposals
        • Voting and Outcome
      • Tokenomics
      • How to utilize and trade tDAO
      • Proposal guidelines for TomoMasterDAO
    • Old Viction Testnet
    • Deploy on Viction
      • CLI Commands
      • Viction Private Testnet Setup
Powered by GitBook
On this page
  • Prerequisites
  • tmn
  • Usage
  • Troubleshooting
  1. Masternode
  2. Run a Full Node

Tmn

We made a simple command line interface called tmn to easily and quickly start a Viction Masternode

PreviousCreate a Viction MasternodeNextDocker

Last updated 1 year ago

It takes care of starting the necessary docker containers with the proper settings for you. It will really suit you if you don't already have a big infrastructure running. Spin up a machine in your favorite cloud and get your Masternode running in a few minutes!

Prerequisites

  • >= 3.6

Warning

We recommnd to run your Masternode on Ubuntu 18.04 LTS. This version have python 3.6 and has been reported as working out of the box.

Installation of Python

To install Python under debian based distribution, run the following commands.

apt update

apt install python3-pip

To check if you have installed the right Python version (must be greater than 3.5).

python3 --version
tmn python

Installation of Docker CE

To install Docker, first update the apt package index.

sudo apt update

Then Install packages to allow apt to use a repository over HTTPS.

sudo apt install apt-transport-https ca-certificates curl software-properties-common

Add Docker’s official GPG key.

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Verify that you now have the key with the fingerprint 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88, by searching for the last 8 characters of the fingerprint.

apt-key fingerprint 0EBFCD88

Set up the stable Docker repository.

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

Update the apt package index. Then install the latest version of Docker CE.

sudo apt update

sudo apt install docker-ce

Once installed, add your current user to the Docker group.

usermod -aG docker $your_user_name

Warning

You need to relog into your account for this to take effect.

Verify that Docker CE is installed correctly by running the hello-world image:

docker run hello-world

This command downloads a test image and runs it in a container. When the container runs, it prints an informational message and exits.

tmn

Installation

Simply install it from pip.

pip3 install --user tmn

Update

Update it from pip.

pip3 install -U tmn

First start

When you first start your full node with tmn, you need to give some information.

--name: The name of your full node. It should be formatted as a slug string. Slug format authorize all letters and numbers, dashes ("-") and underscores ("_"). You can name it to reflect your identity, company name, etc.

--net: The network your full node will connect to. You can choose here to connect it to the Viction Testnet or Mainnet.

--pkey: The private key of the account that your full node will use. A Viction full node uses an account to be uniquely identified and to receive transaction fee.

Important note:

We advise, for security measures, to use a fresh new account for your Masternode. This is not the account who will receive the rewards. The rewards are sent to the account who will make the 50,000 VIC initial deposit.

--api: Expose RPC and websocket on ports 8545 and 8546.

Important note:

Those ports should not be accessible directly from the internet. Please setup fire-walling accordingly if you need to access them localy. Use a reverse proxy if you want to expose them to the outside.

It could look like this:

tmn start --name [YOUR_NODE_NAME] --net testnet --pkey [YOUR_COINBASE_PRIVATE_KEY] --api

Note: It can take up to one hour to properly sync the entire blockchain.

Usage

You can now interact with it via the other commands:

stop: Stop your full node.

start: Start your full node if it is stopped.

status: The current status of your full node.

inspect: Display the details related to your full node. Useful for applying your full node as a Masternode.

remove: Completely remove your asternode, unique identity and data.

Troubleshooting

tmn: command not found

It might happen that your PATH is not set by default to include the default user binary directory. You can add it by adding it to your shell $PATH:

On GNU/Linux:

echo 'export PATH=$PATH:$HOME/.local/bin' >> $HOME/.bashrc

On MacOS: Replace [VERSION] by your version of python (3.5, 3.6, 3.7)

echo 'export PATH=$PATH:$HOME/Library/Python/[VERSION]/bin' >> $HOME/.bashrc

Then reload your environment:

source ~/.bashrc

error: could not access the docker daemon

If you have installed Docker, you probably forgot to add your user to the docker group. Please run this, close your session and open it again.

usermod -aG docker $your_user_name

pip3 install fails due to not being able to build some package

Your OS might not come with build tools preinstalled.

For ubuntu, you can solve that by running:

sudo apt install build-essential python3-dev python3-wheel

pip3 install fails due to "No Module named Setuptools"

Your OS might not come with setup tools preinstalled.

For ubuntu, you can solve that by running:

sudo apt install python3-setuptools

Once started, you should see your node on the !

stats page
Python
Docker CE