[Node] Run your ALEO node

Node Science
4 min readFeb 7, 2024

--

Aleo is a layer-1 blockchain, that combines Zero-Knowledge (ZK) cryptography with programmable smart contracts, providing a robust foundation for secure online transactions. This technological blend enables developers to build applications that prioritize user data privacy. They have raised close to $300 million, and their mainnet is scheduled for launch in the first quarter of 2024.

Welcome to Node Science! Here, you will learn and understand how to set up your node easily and quickly, without any prior technical knowledge.

Feel free to follow us on Twitter to stay updated on everything related to nodes and join our Discord for further discussion or any questions with our community!

/!\ This guide contains all the command lines and instructions needed to set up the node. If you want a detailed explanation of what each command line does, go here !

VPS configuration

To run a node you’ll need a VPS (Virtual Private Server) and one of the most reliable and cheapest solution is Contabo.

The minimum system requirements for Aleo provers are:

- OS : Ubuntu 20.04, macOS Ventura or later
- CPU : 32-cores (64-cores preferred)
- RAM : 32GB of memory (64GB or larger preferred)
- Storage : 128GB of disk space
- Network : 250Mbps of upload and download bandwidth
- GPU : CUDA-enabled GPU (optional)

So you can choose the CLOUD VPS 3 by clicking here (or higher if you want to run several nodes on it).

Don’t forget to choose a password.

Once payment is complete, you’ll receive an e-mail with your IP address. To access your VPS and utilize its functionalities securely, it is necessary to install the Putty application, which facilitates a protected connection

Type your IP address, open and accept.

II) Node deployment

Ensure you copy each command line using (Ctrl+C), and then paste it into your terminal by right-clicking your mouse. Execute them sequentially, pressing Enter after each, if required.

Start by refreshing the local package index to incorporate the most recent modifications made in the repositories.

sudo apt-get update && sudo apt-get upgrade -y

Then installs several essential tools and dependencies.

apt install screen git -y
  • git: A distributed version control system widely used for collaborative software development.
  • screen: allows you to create multiple virtual terminals within a single terminal window or session.

Then install Rust programming language using rustup, which is Rust's toolchain installer.

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Type 1 then Enter to proceed with default installation.

As requested, configure your current shell with:

source "$HOME/.cargo/env"

Clone the snarkOS Git repository in your current directory with the latest commit ( — depth 1 argument).

git clone https://github.com/AleoHQ/snarkOS.git --depth 1

Change your current directory to snarkOS.

cd snarkOS

Execute the shell script “build_ubuntu.sh”.

./build_ubuntu.sh

Then install a Rust binary crate from the local directory.

cargo install --path .

Create your wallet with your private key and do not forget to save them !

snarkos account new

You can then attach your node to a screen session.

screen -S aleo

And relaunch your node with:

./run-prover.sh

Finally type your previously saved Aleo private key.

Congratulations, you’ve just deployed your first node on Aleo! Simply press CTRL+A+D to detach from the screen session; your node will keep running. And if you to reattach to the existing screen session, just type screen -r aleo.

Feel free to follow us on Twitter to stay updated on everything related to nodes and join our Discord for further discussion or any questions with our community!

Official links from Aleo :

--

--