...

Story Protocol - Setup Guide

Rent servers

Automatic Installation

wget -q -O StoryNodeAutomation.sh https://snapshotstory.shablya.io/StoryNodeAutomation.sh && sudo chmod +x StoryNodeAutomation.sh && ./StoryNodeAutomation.sh

Manual Installation

Install dependencies

sudo apt update
sudo apt-get update
sudo apt install curl git make jq build-essential gcc unzip wget lz4 aria2 -y

Download Story (Geth)

wget https://story-geth-binaries.s3.us-west-1.amazonaws.com/geth-public/geth-linux-amd64-0.9.3-b224fdf.tar.gz
tar -xzvf geth-linux-amd64-0.9.3-b224fdf.tar.gz
[ ! -d "$HOME/go/bin" ] && mkdir -p $HOME/go/bin
if ! grep -q "$HOME/go/bin" $HOME/.bash_profile; then
    echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> ~/.bash_profile
fi
sudo cp geth-linux-amd64-0.9.3-b224fdf/geth $HOME/go/bin/story-geth
source $HOME/.bash_profile
story-geth version

Download Story

wget https://story-geth-binaries.s3.us-west-1.amazonaws.com/story-public/story-linux-amd64-0.10.1-57567e5.tar.gz
tar -xzvf story-linux-amd64-0.10.1-57567e5.tar.gz
[ ! -d "$HOME/go/bin" ] && mkdir -p $HOME/go/bin
if ! grep -q "$HOME/go/bin" $HOME/.bash_profile; then
    echo "export PATH=$PATH:/usr/local/go/bin:~/go/bin" >> ~/.bash_profile
fi
cp $HOME/story-linux-amd64-0.10.1-57567e5/story $HOME/go/bin
source $HOME/.bash_profile
story version

Init Story(Iliad) node

story init --network iliad --moniker "YOUR_VALIDATOR_NAME"

Create service file for story-geth

sudo tee /etc/systemd/system/story-geth.service > /dev/null 
[Unit]
Description=Story Geth Client
After=network.target
            
[Service]
User=root
ExecStart=/root/go/bin/story-geth --iliad --syncmode full
Restart=on-failure
RestartSec=3
LimitNOFILE=4096
            
[Install]
WantedBy=multi-user.target
EOF

Create service file for story-geth

sudo tee /etc/systemd/system/story.service > /dev/null <<EOF
[Unit]
Description=Story Client
After=network.target

[Service]
User=root
ExecStart=/root/go/bin/story run
Restart=on-failure
RestartSec=3
LimitNOFILE=4096

[Install]
WantedBy=multi-user.target
EOF

Reload daemon, start story and story-geth

sudo systemctl daemon-reload && \
sudo systemctl start story-geth && \
sudo systemctl enable story-geth && \
sudo systemctl start story && \
sudo systemctl enable story && \
sudo systemctl --no-pager status story-geth && sudo systemctl --no-pager status story

Check logs

sudo journalctl -u story-geth -u story -f

Check sync status

wget -q -O node_height_monitor.sh https://snapshotstory.shablya.io/node_height_monitor.sh && sudo chmod +x node_height_monitor.sh && ./node_height_monitor.sh

Create validator

Export validator Public Key & Private key

story validator export

If you’d like to save the derived EVM private key for your validator in the default configuration directory, run the following command:

story validator export --export-evm-key

Create validator

story validator create --stake 1000000000000000000 --private-key <Your_Private_Key> --chain-id 1513

Chain ID:

iliad-0

RPC status:

Block Height:

1165900

Automatic Service

This script allows you to update peers, manage the address book, check your node’s synchronization, and download snapshots

wget -q -O StoryNodeAutomation.sh https://snapshotstory.shablya.io/StoryNodeAutomation.sh && sudo chmod +x StoryNodeAutomation.sh && ./StoryNodeAutomation.sh

Check sync status

wget -q -O node_height_monitor.sh https://snapshotstory.shablya.io/node_height_monitor.sh && sudo chmod +x node_height_monitor.sh && ./node_height_monitor.sh

Snapshot - Updated every 6h

Install required dependencies

sudo apt-get install wget lz4 -y

Stop story(geth) and story nodes

sudo systemctl stop story-geth && sudo systemctl stop story

Back up your priv_validator_state.json

sudo cp $HOME/.story/story/data/priv_validator_state.json $HOME/.story/priv_validator_state.json.backup

Delete previous geth chaindata and story data folders

sudo rm -rf $HOME/.story/geth/iliad/geth/chaindata
sudo rm -rf $HOME/.story/story/data

Download story(geth) and story snapshots

wget -O geth_latest.tar.lz4 https://snapshotstory.shablya.io/geth_latest.tar.lz4
wget -O geth_latest.tar.lz4 https://snapshotstory.shablya.io/story_latest.tar.lz4

Decompress snapshots

lz4 -c -d geth_latest.tar.lz4 | tar -xv -C $HOME/.story/geth/iliad/geth
lz4 -c -d story_latest.tar.lz4 | tar -xv -C $HOME/.story/story

Delete downloaded snapshots

sudo rm -v geth_latest.tar.lz4
sudo rm -v story_latest.tar.lz4

Restore your priv_validator_state.json

sudo cp $HOME/.story/priv_validator_state.json.backup $HOME/.story/story/data/priv_validator_state.json

Start story(geth) and story nodes

sudo systemctl start story-geth && sudo systemctl start story