🧑Building a Node from Source

Here are the instructions if you want to build you own node without relying on our images. These instructions were generated on an Ubuntu 20.04 LTS box, but they should work with other systems too.

Prerequisites

#Hardware requirements

Nodes need to process and store the transaction history of BLAST Mainnet or BLAST Goerli. They need to be relatively powerful machines (real or virtual). We recommend at least 16 GB RAM. We recommend a 1TB SSD for BLAST Mainnet, our current archive node usage is ~500GB. We recommend a 100GB SSD for BLAST Goerli, or current full node usage is ~1.6GB and archive node usage is ~5.6GB.

#Software requirements

You’ll need the following software installed to follow this tutorial:

This tutorial was checked on:

SoftwareVersionInstallation command(s)

Ubuntu

20.04 LTS

git, curl, jq, make, and zstd

OS default

sudo apt update, sudo apt install -y git curl make jq zstd

Go

1.20

wget https://go.dev/dl/go1.20.linux-amd64.tar.gz, tar xvzf go1.20.linux-amd64.tar.gz, sudo cp go/bin/go /usr/bin/go, sudo mv go /usr/lib, echo export GOROOT=/usr/lib/go >> ~/.bashrc

Node

18.17.1

nvm install 18.17.1, nvm use 18.17.1

pnpm

8.6.12

sudo npm install -g pnpm

Foundry

0.2.0

curl -L https://foundry.paradigm.xyz | bash, . ~/.bashrc, foundryup

#Building the software

#Build the Blast Monorepo

  1. Navigate to your working directory.

  2. Clone the Blast Monorepo (opens new window).

    git clone https://github.com/BLASTchain/blast.git
  3. Install required modules.

    cd blast
    pnpm install
  4. Build the various packages inside of the Blast Monorepo.

    make bl-node
    pnpm build

This process will take some time, so you can move onto the next section while the build completes.

#Build op-geth

  1. Navigate to your working directory.

  2. Clone op-geth (opens new window):

    git clone https://github.com/BLASTchain/op-geth.git
  3. Build op-geth:

    cd op-geth    
    make geth

Last updated