Run a Node with Docker

With just a few commands, you can run your own Base Blockchain node using docker-compose. Simply use the base blockchain docker.

Requirements:

Listed below are the minimum viable requirements.

Although it is possible to run a node using these specifications, it is recommended to assign more resources for optimal performance.

  • docker-compose version 2.2.2 or greater is required

  • 4GB memory

  • 1 Vcpu ( minimum of 2 Vcpu is recommended )

  • 100GB disk ( minimum of 150GB SSD is recommended )

MACOS WITH AN ARM PROCESSOR IS NOT RECOMMENDED

The design of Docker for Mac on an Arm CPU results in slow I/O, which can be problematic for I/O-intensive applications like blockchains. This issue appears to be specific to MacOS, as other Arm-based systems, such as Raspberry Pi, perform as expected.

Quickstart

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

  • mainnet

  • testnet

  • mocknet

  1. Clone the base-blockchain-docker repository locally

git clone https://github.com/Base-Technology/base-blockchain-docker && cd base-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

TIP

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

Base-blockchain:

  • Ports 20443-20444 are exposed on localhost

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

Base-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