June 26, 2022

SubSpace Gemini Incentivized Testnet - NodeX

source : opensea.io/azuki

general information

Subspace, after successfully passing the first stage of their testnet, decided to launch the second stage, namely the Gemini Incentivized Testnet. What we do, of course, we launch the node. The developers said that there would be enough time for the installation for everyone, but it’s still worth it to hurry up. There are no details on the rewards yet, just put a node and hope not for caps

From funds on board Coinbase, Pantera, Alameda, Krypital, Okex, Gate and many other TOPs.

The testnet has just begun, interruptions are possible. Possible synchronization problems. Developers fix everything as they go. Let's watch and stay tuned for updates!

Important! If you participated in the first stage, namely the stress test, then use this wallet in the new testnet and you will claim some privileges!

Good luck!

👉 Link to off documents: https://github.com/subspace/subspace/blob/38eb757fe63825cbc4d182697f442894d00d190c/docs/farming.md

👉 Twitter project: https://twitter.com/NetworkSubspace

👉 Project telegram: https://t.me/subspace_network

👉 Project Discord: https://discord.gg/nm7FUGhW


equipment requirements

Minimum hardware requirements from the developer

  • 2 processors
  • 2 GB RAM
  • 40 GB SSD drive (The bigger the better)
  • Bandwidth: 1Gbps download / 100Mbps download

The amount of farm in the node will depend on the amount of free space on the server, so it’s not a pity to allocate how much, but we don’t recommend allocating the entire size of the SSD.


Wallet creation

If you did not take part in the first stage of the testnet from SubSpace, then go to the explorer and, as indicated on the screenshots, create a wallet.

It is important to save, better in a separate file, all wallet data, address (needed for installation) and mnemonics (needed when rearranging or losing access to the wallet)


Node installation

Option 1 ( Automatic installation )

For a fully automatic installation of the node, use our script, you will be prompted to enter the name of the node (without spaces and special characters) and the wallet address from step 1 .

curl https://raw.githubusercontent.com/agonyp/Scripts-ALPHA-Noderunning/main/subspace-install.sh | bash

Дожидаемся установки и ждем синхронизацию.

Вариант 2 (Ручная установка)

Перемещаемся в главный репозиторий

cd $HOME

Обновляем пакеты

sudo apt update && sudo apt upgrade

Ставим докер

sudo apt install -y wget unzip ca-certificates curl gnupg lsb-release </dev/null
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update && sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y </dev/null

Sometimes docker may have problems with permissions, so we change them in advance on the docker.sock file

sudo  chmod  666 /var/run/docker.sock

Set system variables (Enter the name of the node in the wallet address copied from step 1 , as well as the desired location that you want to allocate on the server). For example - 50G - 50 gigabytes, 2T - 2 terabytes, leave room for the node

export  NODE_ID = "YOUR-MONIKER" 
export  WALLET_ADDRESS = "YOUR-WALLET-ADDRESS" 
export  PLOT_SIZE = "DISK_SIZE" 

Importing variables into the system

source $HOME/.bash_profile

Create a folder for Subspace

mkdir $HOME/subspace

Create a docker-compose file with our settings

sudo tee <<EOF >/dev/null ~/$HOME/subspace/docker-compose.yml
version: "3.7"
services:
  node:
    image: ghcr.io/subspace/node:gemini-1b-2022-jun-13
    volumes:
      - node-data:/var/subspace:rw
#      - /path/to/subspace-node:/var/subspace:rw
    ports:
      - "0.0.0.0:30333:30333"
    restart: unless-stopped
    command: [
      "--chain", "gemini-1",
      "--base-path", "/var/subspace",
      "--execution", "wasm",
      "--pruning", "1024",
      "--keep-blocks", "1024",
      "--port", "30333",
      "--rpc-cors", "all",
      "--rpc-methods", "safe",
      "--unsafe-ws-external",
      "--validator",
      "--name", "$NODE_ID"
    ]
    healthcheck:
      timeout: 5s
      interval: 30s
      retries: 5
      farmer:
    depends_on:
      node:
        condition: service_healthy
        image: ghcr.io/subspace/farmer:gemini-1b-2022-jun-13
        volumes:
      - farmer-data:/var/subspace:rw
#      - /path/to/subspace-farmer:/var/subspace:rw
    restart: unless-stopped
    command: [
      "--base-path", "/var/subspace",
      "farm",
      "--node-rpc-url", "ws://node:9944",
      "--ws-server-listen-addr", "0.0.0.0:9955",
      "--reward-address", "$WALLET_ADDRESS",
      "--plot-size", "$PLOT_SIZE"
    ]
volumes:
  node-data:
  farmer-data:
EOF

Moving to the folder with Subspace

cd $HOME/subspace

Launching our container

docker compose up -d

Update

To update, you must perform the following steps:

We stop the service

cd $HOME/subspace
docker compose stop

Opening the service file

nano docker-compose.yml

The current version of the node is version 18 (dated 06/18/2022)

In the file that opens, edit the name as indicated on the screenshot with only the current version of the node:

Replace june-05 at the end of lines with jun-18!

This version doesn't work well on Windows - you can stay on jun-13!

Then press Ctrl+S, then Ctrl+X

Next, we rebuild the container:

docker compose down -v
docker compose up -d

The version of the node may change over time, we will indicate the current update number in the future, then we change it according to the same principle as in the screenshot above

If, after updating, the node writes something like this:
[Node is running on non-canonical fork, full node and farmer reset is required].

Then you need to remove the node and put it first


Useful Commands

If when checking logs? blocks are not synchronized, restart the node.

Check logs

docker logs subspace-node-1

Check farmer

docker logs subspace-farmer-1

Restart node

sudo docker restart subspace-node-1

Restart the service

sudo docker restart subspace-farmer-1

Delete node

sudo docker stop subspace-node-1 subspace-farmer-1 && sudo docker rm subspace-farmer-1 subspace-node-1
sudo rm -rf $HOME/subspace

Credit by @nekiy_iz ❤️ @alphateam