Skip to main content

Running a Node

Run a Specter full node or validator using the specterd binary.

Build from source

# Clone the repository
git clone https://github.com/Specter-Foundation/specterchain.git
cd specterchain/chain

# Build the binary
go build -o specterd ./cmd/specterd

# Verify
./specterd version

Initialize

./specterd init my-node --chain-id specter-testnet-1

This creates the node's home directory at ~/.specter with default configuration files.

Start

./specterd start

Systemd service

For production nodes, run as a systemd service:

# /etc/systemd/system/specterd.service
[Unit]
Description=Specter Node
After=network.target

[Service]
Type=simple
User=specter
ExecStart=/opt/specter/bin/specterd start
Restart=always
RestartSec=5
Environment=GHOSTMINT_AUTHORIZED_CALLERS=0x35cdaE691037fcBb3ff9D0518725F1ae98d502b7

[Install]
WantedBy=multi-user.target
sudo systemctl enable specterd
sudo systemctl start specterd
sudo journalctl -u specterd -f # view logs

Data directory structure

~/.specter/
├── config/
│ ├── config.toml # CometBFT configuration
│ ├── app.toml # Application configuration
│ ├── genesis.json # Chain genesis
│ └── node_key.json # Node identity
├── data/ # Chain data
└── keyring-* # Key storage

Ports

PortService
26656CometBFT P2P
26657CometBFT RPC
8545EVM JSON-RPC
8546EVM WebSocket
1317Cosmos REST API
9090gRPC

Hardware requirements

ComponentMinimumRecommended
CPU4 cores8 cores
RAM8 GB16 GB
Disk100 GB SSD500 GB NVMe
Network100 Mbps1 Gbps