- Go (install go)
- Akash
- Docker (optional) - (install docker ubuntu / debian)
Check Akash Networks info at https://raw.githubusercontent.com/ovrclk/net
This guide is using akash mainnet
- Install Akash
- Setup Akash Wallet
- Build Sifnode Docker Image (Optional)
- Prepare Deploy configuration file
- Deployment creation
- Check node running status
#Akash Mainnet
AKASH_NET="https://raw.githubusercontent.com/ovrclk/net/master/mainnet"
#Choose version
AKASH_VERSION="$(curl -s "$AKASH_NET/version.txt")"
#Install From source (requires go1.16+ installation)
go get -d github.com/ovrclk/akash
cd $GOPATH/src/github.com/ovrclk/akash
git checkout "v$AKASH_VERSION"
make deps-install
make install
(or)
#Download from akash releases page
wget https://github.com/ovrclk/akash/releases/download/v${AKASH_VERSION}/akash_${AKASH_VERSION}_linux_amd64.deb
sudo dpkg -i akash_${AKASH_VERSION}_linux_amd64.deb
(or)
#install using godownloader
curl https://raw.githubusercontent.com/ovrclk/akash/master/godownloader.sh | sh -s -- "v$AKASH_VERSION"
akash will be installed at $GOPATH/bin/akash
or /usr/local/bin/akash
#check version
akash version
To install go1.16+ check here
# come back to home directory
cd ~/
#Create Akash wallet using below command and save mnemonic phrase at safe place
akash keys add mykey
(or)
#Recover your account with previous mnemonic
akash keys add mykey --recover
#Buy Tokens and Transfer some AKT to above generated address
#make sure you have more than 5AKT
#Check balance
#Taking RPC node address directly from akash net repo
AKASH_NODE="$(curl -s "$AKASH_NET/rpc-nodes.txt" | shuf -n 1)"
akash bank balances <your_wallet_address> --node $AKASH_NODE
3). Build Sifnode Docker Image (requires docker)
This step is optional - you can use pre-built docker image harish1551/sifchain-node:latest
git clone https://github.com/harish551/sifchain-node-docker.git && cd sifchain-node-docker
build docker image using Dockerfile
docker build -t <image-name:image-tag> -f Dockerfile .
This command will take few minutes
Upload docker image to your docker hub
docker login
docker tag <source_image>:<tag> <repo-name>/<image-name>:<tag>
docker push <repo-name>/<image-name>:<tag>
mkdir -p ~/deploy-sifnode && cd ~/deploy-sifnode
Create deploy-sifnode.yml file with below configuration
deploy-sifnode.yml
---
version: "2.0"
services:
sifnode:
image: harish1551/sifchain-node:latest
expose:
- port: 26656
as: 26656
to:
- global: true
- port: 26657
as: 80
to:
- global true
- port: 1317
as: 1317
to:
- global true
environment:
CHAIN_ID: sifchain
MONIKER: sifnode-akash-1
PERSISTENT_PEERS: 0d4981bdaf4d5d73bad00af3b1fa9d699e4d3bc0@44.235.108.41:26656,bcc2d07a14a8a0b3aa202e9ac106dec0bef91fda@13.55.247.60:26656,663dec65b754aceef5fcccb864048305208e7eb2@34.248.110.88:26656,0120f0a48e7e81cc98829ef4f5b39480f11ecd5a@52.76.185.17:26656,6535497f0152293d773108774a705b86c2249a9c@44.238.121.65:26656,fdf5cffc2b20a20fab954d3b6785e9c382762d14@34.255.133.248:26656,8c240f71f9e060277ce18dc09d82d3bbb05d1972@13.211.43.177:26656,9fbcb6bd5a7f20a716564157c4f6296d2faf5f64@18.138.208.95:26656
GENESIS_URL: https://raw.githubusercontent.com/Sifchain/networks/master/mainnet/sifchain/genesis.json
GAS_PRICE: 0.1rowan
profiles:
compute:
sifnode:
resources:
cpu:
units: 1
memory:
size: 2Gi
storage:
size: 30Gi
placement:
dc1:
attributes:
datacenter: equinix-metal-ewr1
signedBy:
anyOf:
- "akash1365yvmc4s7awdyj3n2sav7xfx76adc6dnmlx63"
pricing:
sifnode:
denom: uakt
amount: 5
deployment:
sifnode:
dc1:
profile: sifnode
count: 1
if you want to use your own docker image change image: <your docker image>
set MONIKER
and GAS_PRICES
Using
- 1 CPU
- 2GB RAM
- 30GB Storage With price 5uakt per block
That means
1AKT = 10^6 uakt Daily Blocks ~ 14000 (blocktime - 6.18 sec) Per Day Cost ~ 140005 = 70000uakt (0.07AKT) ~ $0.21 Per Month Cost ~ 7000030 = 2100000 (2.1AKT) ~ $6.3
You should use your node specification recommended by Sifchain network
setup akash environment
# mainnet
AKASH_NET="https://raw.githubusercontent.com/ovrclk/net/master/mainnet"
AKASH_NODE="$(curl -s "$AKASH_NET/rpc-nodes.txt" | shuf -n 1)"
AKASH_CHAIN_ID="$(curl -s "$AKASH_NET/chain-id.txt")"
AKASH_ACCOUNT_ADDRESS=<your wallet address>
AKASH_KEY_NAME=<your wallet-key name>
akash tx cert create client \
--chain-id $AKASH_CHAIN_ID \
--from $AKASH_KEY_NAME \
--node $AKASH_NODE \
--fees 500uakt
akash tx deployment create deploy-sifnode.yml \
--from $AKASH_KEY_NAME \
--node $AKASH_NODE \
--chain-id $AKASH_CHAIN_ID \
--fees 500uakt \
-b sync -y
use 'txHash' from above response
akash q tx <txHash> --node $AKASH_NODE
AKASH_DSEQ=<DSEQ value from above response>
AKASH_OSEQ=1
AKASH_GSEQ=1
echo $AKASH_DSEQ $AKASH_OSEQ $AKASH_GSEQ
akash query deployment get --owner $AKASH_ACCOUNT_ADDRESS \
--node $AKASH_NODE --dseq $AKASH_DSEQ
akash query market order get --node $AKASH_NODE \
--owner $AKASH_ACCOUNT_ADDRESS --dseq $AKASH_DSEQ \
--oseq $AKASH_OSEQ --gseq $AKASH_GSEQ
akash query market bid list --owner=$AKASH_ACCOUNT_ADDRESS \
--node $AKASH_NODE --dseq $AKASH_DSEQ
AKASH_PROVIDER=<selected provider address from above bids>
akash tx market lease create --chain-id $AKASH_CHAIN_ID \
--node $AKASH_NODE --owner $AKASH_ACCOUNT_ADDRESS \
--dseq $AKASH_DSEQ --gseq $AKASH_GSEQ --oseq $AKASH_OSEQ \
--provider $AKASH_PROVIDER --from $AKASH_KEY_NAME --fees 500uakt
akash query market lease list \
--owner $AKASH_ACCOUNT_ADDRESS \
--node $AKASH_NODE \
--dseq $AKASH_DSEQ
akash provider send-manifest deploy-sifnode.yml \
--node $AKASH_NODE \
--dseq $AKASH_DSEQ \
--provider $AKASH_PROVIDER \
--from $AKASH_KEY_NAME
You should get empty response for successful execution
akash provider lease-status \
--node $AKASH_NODE \
--dseq $AKASH_DSEQ \
--from $AKASH_KEY_NAME \
--provider $AKASH_PROVIDER
copy host addresses and external ports from above response
HOST=<host address from above response>
akash provider lease-logs \
--node "$AKASH_NODE" \
--dseq "$AKASH_DSEQ" \
--gseq "$AKASH_GSEQ" \
--oseq "$AKASH_OSEQ" \
--provider "$AKASH_PROVIDER" \
--from "$AKASH_KEY_NAME"
You should get logs of sifnode blocks
To check rpc node status - request address of akash host of your deployment
curl -s http://${HOST}
Sifchain
- Official Website - https://sifchain.finance/
- Github Source Code - https://github.com/Sifchain/sifnode
- Block Explorer - https://blockexplorer.sifchain.finance/
Akash
- Official Website - https://akash.network
- Documentation - https://docs.akash.network
- Github - https://github.com/ovrclk/