Register a Network on OnFinality
OnFinality supports registering a network specification for any Substrate Network. This allows customers to then deploy any number of nodes using our automated deployment tools
Registering a new network specification on OnFinality is free, and takes only 10 minutes, all you require is a well created Docker image for your network hosted in DockerHub or GitHub Image Repository. In this tutorial, we'll add the network-spec for a custom network so that later you and your team can deploy your own nodes into it.
In this tutorial, you will learn how to register a new network spec in OnFinality.
Preparations
A well constructed public substrate-based image on DockerHub or GitHub (Docker image guidelines here)
A workspace with credit card bound
We strongly recommend that you use the automated docker build and publish GitHub actions that we have prepared to ensure that your image is well constructed and automatically published to DockerHub.
Steps
Create a Network Spec
Firstly, Login (opens new window) to your OnFinality account and go to the
Networks
page. Here, click onCreate Network Spec
up in the top right of your screen.
Enter Network Details
On this page you'll enter some key information about the network that you are joining or registering
Currently we only support joining or creating custom substrate networks (and there are plenty of them!) but this will be expanded in the future.
Display Name: Give the network a memorable name
Protocol: Set the protocol your network uses
Substrate
- A substrate stand-alone network or relay chainPolkadot Parachain
- A parachain on one the polkadot relay chains, Kusama parachains included.
3. Image Repository is the public docker name of the network's nodes. We support the following repositories
Repository | Example configuration |
---|---|
Docker Hub | parity/polkadot |
GitHub | ghcr.io/phanatic/app |
4. Image Repository Version is the specific tagged version of that repository you want to take the code off
Versions must be labelled with specific version tags, ideally with semantic labelling. OnFinality does not support the lastest
tag as we can’t tell what version exactly it is when nodes are deployed.
When publishing a new version, you can upload two tagged versions to Dockerhub, a latest
and a semantically versioned one that is the same underlying image.
Once you've entered all details on this page, click Next
.
Add Network Argument Rules
We will then inspect the image version that you submitted and attempt to guess the arguments that you need to run the image for each different node type.
For each node type, please confirm all the arguments and configuration steps
Arguments
Please provide the arguments required to start the parachain node
The Value represents the default value of that argument
Enabling Lock will mean the user can not override this default argument value
Environment Rules
If the node requires certain values to be set on the environment, you can enter them here
Enabling Lock will mean the user can not override this default environment value
Recommended Configuration
Please set the recommended node size and storage size for each node type. This will be the default when a user goes to create a new node from this network spec.
Congratulations, now go add your own node to this network
You'll now see the custom network you’ve created Networks page. We strongly suggest that you attempt to deploy a test node using the Deploy a Dedicated Node in your new custom network feature to verify that you have configured the node correctly.
Alternatively you can skip right through to publishing your new network spec to our node marketplace.