Updating Your Node
It is very important, both for network security and for performance of your own node, to keep your Pocket node up-to-date with the latest version of the Pocket software. The following steps will show you how to update your Pocket node.
Release-specific changes
Each release may have specific modifications you need to make. This is just a general guideline for the steps you’ll typically take to update your node. Check the release notes for release-specific details.
Shutdown Pocket Core
Stop your Pocket Core instance running by submitting the shutdown command.
pocket stop
Once you shutdown Pocket Core, you will have 4 blocks (60 minutes) to complete the update and start Pocket Core again before your node gets jailed for downtime.
Backup blockchain data
Backing up your blockchain data will ensure a faster resync when you restart your node.
Navigate inside your $HOME/.pocket/
dir and save data/
(the entire directory):
cp -r ~/.pocket/data ~/backup/data
In the event of a corrupted database you can delete the bad data rm -r ~/.pocket/data
and replace it with your backup cp -r ~/backup/data ~/.pocket/data
.
If you don’t have a backup, a temporary backup datadir may be provided alongside a release.
Ensure the latest Go version
Check your golang version. The release notes will specify which version it should be.
go version
If you need to update Go, use this guide.
Alternatively, if you use g
, you can just run
sudo apt-get update
g install <version number>
Checkout latest Pocket Core
Source
Navigate into pocket-core
directory
cd ~/go/src/github.com/pokt-network/pocket-core
Check out the latest release:
git pull
git checkout tags/RC-0.9.2
Rebuild the binary:
go build -o $GOPATH/bin/pocket ./app/cmd/pocket_core/main.go
Homebrew
Pull the latest tap:
brew upgrade pokt-network/pocket-core/pocket
Docker
Pull the latest container image:
docker pull poktnetwork/pocket-core:RC-0.9.2
docker pull poktnetwork/pocket:RC-0.9.2
Update config.json
Run the update-configs command, which creates a new config file ($HOME/.pocket/config/config.json
) and backs up the old config file ($HOME/.pocket/config/config.json.bk
).
pocket util update-configs
You’ll need to manually compare your backup file with the new file to copy over your personal config details.
Start Pocket
Start pocket
running again.
pocket start
You can then test your node.