How to Set Up a Cardano Node (cardano-node) on a VPS

Cardano uses its own distinct node implementation with specific setup considerations — this guide covers the basics of running cardano-node on a VPS.

VPS Requirements for a Cardano Node

See VPS Requirements for Running a Blockchain Node for general context — consult Cardano's official current documentation for specific minimum hardware requirements, since these are periodically updated as the protocol evolves.

Step 1 — Install Dependencies

sudo apt install -y automake build-essential pkg-config libffi-dev libgmp-dev libssl-dev libtinfo-dev libsystemd-dev zlib1g-dev make g++ tmux git jq wget libncursesw5 libtool autoconf

Step 2 — Download the cardano-node Binary Release

wget https://github.com/IntersectMBO/cardano-node/releases/download/8.9.3/cardano-node-8.9.3-linux.tar.gz
tar -xzf cardano-node-8.9.3-linux.tar.gz
sudo mv cardano-node cardano-cli /usr/local/bin/

Using pre-built binaries is significantly simpler than building from source (which involves the Haskell toolchain and can be resource/time intensive) — recommended for most users.

Step 3 — Download Network Configuration Files

wget https://book.world.dev.cardano.org/environments/mainnet/config.json
wget https://book.world.dev.cardano.org/environments/mainnet/topology.json
wget https://book.world.dev.cardano.org/environments/mainnet/byron-genesis.json
wget https://book.world.dev.cardano.org/environments/mainnet/shelley-genesis.json

Cardano requires several network-specific configuration and genesis files — always download current versions from official sources rather than reusing potentially outdated files.

Step 4 — Start the Node

cardano-node run \
  --topology topology.json \
  --database-path db \
  --socket-path node.socket \
  --host-addr 0.0.0.0 \
  --port 3001 \
  --config config.json

Step 5 — Run as a systemd Service

[Unit]
Description=Cardano Node
After=network.target

[Service]
ExecStart=/usr/local/bin/cardano-node run --topology /opt/cardano/topology.json --database-path /opt/cardano/db --socket-path /opt/cardano/node.socket --host-addr 0.0.0.0 --port 3001 --config /opt/cardano/config.json
Restart=always
User=cardano

[Install]
WantedBy=multi-user.target

Checking Sync Progress

cardano-cli query tip --mainnet

Returns current sync status including the node's current slot versus the network tip — the primary way to monitor sync progress, similar in purpose to How to Monitor Blockchain Node Sync Status and Health but using Cardano-specific CLI tooling.

Understanding Initial Sync Time

Cardano's initial sync can take a genuinely substantial amount of time depending on your hardware and network — plan accordingly, and consider using a snapshot-based fast-sync approach (Mithril, Cardano's lightweight client bootstrapping protocol) if available and appropriate for your use case, since it can significantly reduce initial sync time compared to full historical sync.

Using Mithril for Faster Initial Bootstrap

Mithril provides cryptographically-verified snapshots enabling much faster initial node bootstrap than full historical sync — consult current official Cardano documentation for Mithril client setup, since this significantly improves the initial sync experience compared to traditional full sync.

Setting Up a Stake Pool (Beyond Basic Node Operation)

Running a Cardano stake pool (accepting delegation and producing blocks) is a significantly more involved undertaking than running a basic relay/full node — requires additional infrastructure (block-producing node plus relay nodes), specific security architecture, and genuine operational commitment; research thoroughly via official documentation before pursuing this path.

Common Errors

Node fails to start with configuration file errors — verify all downloaded configuration/genesis files are current and correctly matched to the network (mainnet vs testnet) you intend to run; using mismatched or outdated configuration files is a common setup mistake.

Continue Reading

Browse more articles in Cryptocurrency & Blockchain Node Hosting.

  • cardano node setup vps, cardano-node installation, cardano stake pool basics, mithril fast sync cardano
  • 0 utilizatori au considerat informația utilă
Răspunsul a fost util?

Articole similare

How to Run a Bitcoin Full Node on a VPS

Running your own Bitcoin full node lets you independently verify transactions and blocks without...

How to Run an Ethereum Node with Geth and a Consensus Client

Since Ethereum's transition to proof-of-stake, running a full node requires two separate pieces...

VPS Requirements for Running a Blockchain Node

Different blockchain networks have vastly different resource requirements — this guide...

How to Set Up a Lightning Network Node (LND) on a VPS

The Lightning Network enables fast, low-fee Bitcoin transactions through payment channels. This...

How to Run a Monero Node on a VPS

Monero is a privacy-focused cryptocurrency; running your own node lets you interact with the...