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.
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.
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.
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
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
Pull the latest tap:
brew upgrade pokt-network/pocket-core/pocket
Pull the latest container image:
docker pull poktnetwork/pocket-core:RC-0.9.2
docker pull poktnetwork/pocket:RC-0.9.2
Run the update-configs command, which creates a new config file (
$HOME/.pocket/config/config.json) and backs up the old config file (
pocket util update-configs
You’ll need to manually compare your backup file with the new file to copy over your personal config details.
You can then test your node.