Run a Node with Docker

Stacks Blockchain with Docker

Run your own Stacks Blockchain node using docker-compose with just few commands using stacks-blockchain-docker

Requirements:

The minimum viable requirements are listed below.

While you can run a node using these specs, it's recommended to assign more than the minimum for better performance.

  • ⚠️ docker-compose version 2.2.2 or greater is required

  • 8GB memory if running only a Stacks node

  • 16 GB memory if running Stacks + Bitcoin node

  • 1 Vcpu ( minimum of 2 Vcpu is recommended )

  • 500GB disk for Stacks node

  • 1TB disk space for Bitcoin node

Quickstart

The <network> placeholder used below can be replaced with one of:

  • mainnet

  • testnet

  • mocknet

  1. Clone the stacks-blockchain-docker repository locally

git clone https://github.com/stacks-network/stacks-blockchain-docker && cd stacks-blockchain-docker
  1. Start the Services

./manage.sh -n <network> -a start

With an optional HTTP proxy on port 80:

./manage.sh -n <network> -a start -f proxy

Accessing the services

For networks other than mocknet, downloading the initial headers can take several minutes. Until the headers are downloaded, the /v2/info endpoints won't return any data.

Follow the logs to track the sync progress:

./manage.sh -n <network> -a logs

stacks-blockchain:

  • Ports 20443-20444 are exposed on localhost

curl -sL localhost:20443/v2/info | jq -r

stacks-blockchain-api:

  • Port 3999 is exposed on localhost

curl -sL localhost:3999 | jq -r

proxy:

  • Port 80 is exposed on localhost

curl -sL localhost/v2/info | jq -r
curl -sL localhost | jq -r

Upgrades


Last updated

Was this helpful?