Skip to content

Cosmos_full_node

A full node in Cosmos stores the complete blockchain history and validates all transactions but doesn’t participate in block production like validators.


AspectFull NodeValidator
Block ProductionNoYes
Staking RequiredNoYes (ATOM)
Can Be JailedNoYes
HardwareLess resourcesHigh resources
Use CaseRPC, indexingConsensus

Terminal window
# Install Go first, then:
git clone https://github.com/cosmos/gaia.git
cd gaia
make install
Terminal window
# Initialize
gaiad init my-full-node --chain-id cosmoshub-4
# Download genesis
wget -O ~/.gaia/config/genesis.json \
https://raw.githubusercontent.com/cosmos/mainnet/master/genesis.json
Terminal window
# Basic start
gaiad start
# With seeds
gaiad start \
--seeds="seed@node:26656" \
--p2p.persistent_peers="peer@node:26656"

~/.gaia/config/config.toml
[rpc]
laddr = "tcp://0.0.0.0:26657"
Terminal window
# Get status
curl http://localhost:26657/status
# Get block
curl http://localhost:26657/block?height=10000
# Get validators
curl http://localhost:26657/validators

~/.gaia/config/app.toml
[pruning]
pruning = "default"
pruning-keep-recent = "100"
pruning-keep-every = "500"

Terminal window
# Enable state sync
gaiad start --statesync.enable --statesync.rpc_servers="server1,server2" --statesync.trust_height=12345 --statesync.trust_hash=abc

  • Full nodes don’t stake but validate transactions
  • RPC on port 26657
  • Can enable state sync for faster setup
  • Prune old data to save storage

In Chapter 16: Cosmos RPC & API Configuration, we’ll explore Cosmos APIs.


Last Updated: 2026-02-20