ODIN Protocol

Getting Started

Cloning the Repository

First, clone the GeoDB-Limited/odin-testnet-public-tools repository onto your computer. Make sure that you have at least 20 GB of storage space on the disk.
git clone https://github.com/GeoDB-Limited/odin-testnet-public-tools git clone https://github.com/GeoDB-Limited/odin-testnet-public-tools
and then change into the following directory to begin working within the project folder.
cd odin-testnet-public-tools/nod
There are two key files that may be included in the git repo, and should be removed before starting the node for the first time.
rm -rf config/node_key.json ; rm -rf config/priv_validator_key.jso
When you start your node, new key files will be generated. You will want to save the new keys. There are instructions for this in later pages.

Starting the Node

We have included a quickstart shell script to streamline the initialization process. You can use it by running the start script to start the node.
If you prefer to run the commands yourself step-by-step, run the following:
docker-compose pull
to pull the latest image.
docker-compose up -d
to start the initialization and node containers in the background. You can then run
docker-compose logs -f
to view the logs for the init and node containers. The init container is expected to stop and return exit code 0 very quickly. The node container will begin syncing with the network, which is likely to take a few hours depending on your network speed and the current size of the ledger.
You can check the network's latest block by running
docker exec -it node bandd status --node
and looking for the value "latest_block_height":"XXXXXX". This will give you some idea of the progress your node has made to sync it.
You can check the total disk usage of your ODIN node with
docker system df -v
and looking for the size of the node_vol volume.

Setting the Chain ID

All of the commands in this guide use variables in commands for the chain ID. This is so that you can easily switch to a new chain during the testing phase when development moves to a new chain. To set your chain variable to the latest chain ID, run:
export CHAIN=odin-testnet-heimdall