For the complete documentation index, see llms.txt. This page is also available as Markdown.

Run Citrea Full Node

Running a Citrea node is permissionless - anyone can run a full node for development & security purposes.

The easiest way to get started is to use the Citrea full node Docker image.

Step 1: Install Docker

Follow instructions to install Docker here.

Step 2: Run Citrea Full Node (mainnet)

docker run -d \
  -e NETWORK=mainnet \
  -e NODE_URL=<your_bitcoin_node_rpc_url> \
  -e NODE_USERNAME=<your_bitcoin_rpc_username> \
  -e NODE_PASSWORD=<your_bitcoin_rpc_password> \
  -v citrea-data:/mnt/task/citrea-db \
  -p 8080:8080 \
  chainwayxyz/citrea-full-node:latest

This starts a Citrea mainnet full node. You must provide a fully synced Bitcoin mainnet node running with -txindex=1 for NODE_URL

Running on Testnet? Set NETWORK=testnet and point NODE_URL at a Bitcoin Testnet4 node (see Bitcoin Mainnet β€” each guide has a Testnet4 info box). Everything else stays the same:

docker run -d \
  -e NETWORK=testnet \
  -e NODE_URL=<your_bitcoin_testnet4_node_rpc_url> \
  -e NODE_USERNAME=<your_bitcoin_rpc_username> \
  -e NODE_PASSWORD=<your_bitcoin_rpc_password> \
  -v citrea-data:/mnt/task/citrea-db \
  -p 8080:8080 \
  chainwayxyz/citrea-full-node:latest

Please note that there are no financial incentives to run a Citrea Full Node. It's for your own development setup and security practices.


Mainnet manual setup (binary or source)

If you prefer to avoid Docker or need to customize your setup, use one of the options below.

Option 1: Pre-built binary

  1. Download the latest binary for your OS from the Citrea releases page.

  2. Download mainnet config and genesis files:

  1. Run the node (example for macOS):

Testnet config & genesis: To run on testnet, download the testnet config and genesis instead and run with --network testnet:

Option 2: Build from source

  1. Clone the repository and checkout the latest tag:

  1. Build and run:

Testnet: the repo also ships testnet config and genesis. Build the same way and run with --network testnet:

Want to sync faster? Syncing from genesis can take a while. You can start from a recent snapshot instead β€” see Full Node Snapshots.

Step 3: Check the sync status

You can check the status with the following command (you may need to arrange the URL at the end based on your setup):

A sample response (fields may vary based on the sync status):

Hardware Requirements for running a node

A Linux/Mac/Windows system with a configuration of

  • 8 GB RAM

  • 2 TB SSD (NVMe recommended)

  • 4 core CPU (if you're using cloud)

  • 25+ Mbps network connection

should satisfy the minimum requirements to run a Citrea node. Allocating more resources improves the syncing speed.


If you encounter any problems during the node running even though you have a system that fits the requirements, please visit our Discord and let us know by opening a ticket.

Looking for Testnet? There's no separate testnet guide β€” each step above has a Testnet info box showing the changes (set NETWORK=testnet / --network testnet, use the testnet config & genesis, and point at a Bitcoin Testnet4 node).

Last updated

Was this helpful?