🟢Story


1. Prerequisites

Before starting, ensure you have the following:

  • Operating System: Ubuntu 20.04 or higher (recommended).

  • Hardware Requirements:

    • CPU: 4 cores or more.

    • RAM: 8 GB or more.

    • Storage: 500 GB SSD or more.

    • Network: Stable internet connection with at least 10 Mbps.

  • Tools Installed:

    • curl, wget, git, build-essential.

    • Docker (if required).

Update and Install Dependencies:

sudo apt update && sudo apt upgrade -y
sudo apt install curl wget git build-essential -y

2. Install Go (Golang)

The Story Foundation node requires Golang. Install the latest stable version:

wget https://go.dev/dl/go1.21.1.linux-amd64.tar.gz
sudo tar -C /usr/local -xzf go1.21.1.linux-amd64.tar.gz
echo "export PATH=$PATH:/usr/local/go/bin" >> ~/.bashrc
source ~/.bashrc
go version

3. Clone the Story Repository

Fetch the official Story Foundation codebase:

git clone https://github.com/storyfoundation/story-node.git
cd story-node

4. Build the Node

Compile the node binary:

make build

Verify the build:

./build/storyd version

5. Initialize the Validator Node

Set up your node:

./build/storyd init "<Your_Node_Name>" --chain-id story-mainnet

Download the genesis file and configuration:

curl -o ~/.storyd/config/genesis.json https://story.foundation/genesis.json

6. Configure Networking

Edit config.toml:

nano ~/.storyd/config/config.toml
  • Set seeds or persistent_peers to connect to the network:

persistent_peers = "peer1@<ip>:26656,peer2@<ip>:26656"
  • Adjust the minimum-gas-prices in app.toml:

nano ~/.storyd/config/app.toml

Example:

minimum-gas-prices = "0.025ustory"

7. Start the Node

Launch your node:

./build/storyd start

Check the logs to ensure everything is running smoothly:

tail -f ~/.storyd/logs/storyd.log

8. Create a Validator

Fund Your Wallet:

Generate a wallet:

./build/storyd keys add <wallet_name>

Fund your wallet with tokens (follow instructions from the official faucet or exchange).

Create the Validator:

./build/storyd tx staking create-validator \
  --amount=1000000ustory \
  --pubkey=$(./build/storyd tendermint show-validator) \
  --moniker="<Your_Node_Name>" \
  --chain-id=story-mainnet \
  --commission-rate="0.10" \
  --commission-max-rate="0.20" \
  --commission-max-change-rate="0.01" \
  --min-self-delegation="1" \
  --fees=500ustory \
  --from=<wallet_name>

9. Monitor the Node

Use the following commands to monitor your node:

  • Check sync status:

./build/storyd status 2>&1 | jq .SyncInfo
  • View validator info:

./build/storyd query staking validator $(./build/storyd tendermint show-validator)
  • Check logs:

journalctl -u storyd -f

10. Secure Your Node

  • Set up a firewall:

sudo ufw allow 22,26656,26657/tcp
sudo ufw enable
  • Enable automatic restarts:

sudo systemctl enable storyd

Last updated