Full Node - Binary (~30 min)
Full Node Walkthrough via Binary β
π§βπ¬ Detailed step-by-step instructions to get you up and running with a Full Node
on Pocket Network β
See the Full Node Cheat Sheet if you want to just copy-pasta a few commands.
These instructions are intended for Debian-based systems.
Table of Contents β
- Why run a Full Node?
- Pre-Requisites & Requirements
- Instructions
- 1. Install Dependencies
- 2. Create a New User
- 3. Set Up Environment Variables for Cosmovisor
- 4. Install Cosmovisor
- 5. Retrieve the Genesis File
- 6. Choose Sync Method: Genesis vs Snapshot
- 7. Install
pocketd
- 8. Network Configuration
- 9. Set Up
systemd
Service - 10. Configure your Firewall
- 11. Check & Monitor the Status of your Node
- Next Steps
Why run a Full Node?β
This guide will walk you through, step-by-step, running a Full Node for Pocket Network.
Running a Full Node is the first step toward becoming a Validator, Supplier, or Gateway.
The instructions outlined here use Cosmovisor to enable automatic binary upgrades.
Pre-Requisites & Requirementsβ
- Linux-based System: Preferably Debian-based distributions (Ubuntu, Debian).
- Hardware Requirements: See the hardware requirements doc
- Architecture Support: Both x86_64 (amd64) and ARM64 architectures are supported.
- Root or Sudo Access: Administrative privileges are required.
- Dedicated Server or Virtual Machine: Any provider is acceptable.
If you are using Vultr for your deployment, you can following the CLI Playbook we put together here to speed things up.
Instructionsβ
1. Install Dependenciesβ
Install all the necessary CLI tools:
sudo apt-get update
sudo apt-get install -y curl tar wget jq zstd aria2
zstd
is required for snapshot compression/decompression.
aria2
is needed for efficient torrent downloads if you choose to sync from a snapshot.
2. Create a New Userβ
Create a dedicated user to run pocketd
:
sudo adduser pocket
Set a password when prompted, and add the user to the sudo group:
sudo usermod -aG sudo pocket
And switch to the pocket
user:
sudo su - pocket
3. Set Up Environment Variables for Cosmovisorβ
Create a .pocketrc
file and set the following environment variables:
cat > ~/.pocketrc << 'EOF'
export DAEMON_NAME=pocketd
export DAEMON_HOME=$HOME/.pocket
export DAEMON_RESTART_AFTER_UPGRADE=true
export DAEMON_ALLOW_DOWNLOAD_BINARIES=true
export UNSAFE_SKIP_BACKUP=false
export PATH=$HOME/.local/bin:$HOME/.pocket/cosmovisor/current/bin:$PATH
EOF
echo "source ~/.pocketrc" >> ~/.profile
source ~/.profile