Skip to main content

Hosted Nodes

How to get a preconfigured Celo blockchain node running on one of the major cloud providers.


warning

Celo is currently transitioning from a standalone Layer 1 blockchain to an Ethereum Layer 2. As a result, certain information about developer resources may be outdated.

For the latest information, please refer to our Celo L2 documentation.

Before getting started

cLabs currently provides machine images for launching full and lightest nodes on Alfajores and Mainnet. These prebuilt images are updated with every release of the Celo blockchain client and are available on Amazon Web Services and Google Cloud Platform.

Before proceeding with a hosted Celo blockchain node, you'll need to have an account with your cloud provider of choice and basic knowledge of networking.

info

If you would like to keep up-to-date with all the news happening in the Celo community, including validation, node operation and governance, please sign up to our Celo Signal mailing list.

You can add the Celo Signal public calendar as well which has relevant dates.

Currently, cLabs provides the following machine images:

  • celo-alfajores-full-node-latest
  • celo-alfajores-lightest-node-latest
  • celo-mainnet-full-node-latest
  • celo-mainnet-lightest-node-latest

Please note that the time taken to sync a full node could be significant.

Google Cloud Platform

GCP by default won't display public machine images when you search for them in your console. This means you'll need to go via the API or gcloud command line to launch a node.

Depending on the type of node you'd like to launch (see the above list), the gcloud command to use may look a bit like this:

gcloud compute instances create <INSTANCE_NAME> --image <IMAGE_NAME> --image-project devopsre --project <YOUR_GCP_PROJECT>

If you are running a image with full syncmode, please increase the disk size and instance type, and optionally use a SSD disk:

--boot-disk-size 250 --boot-disk-type pd-ssd --machine-type=n2-standard-4 

For full sync mode, it will take several days to sync the whole chain. You can check the status by running the next command:

container_name=celo-full-node
docker exec -it $container_name geth attach --exec 'eth.syncing'

For more information please check the excellent GCP documentation on how to launch a compute instance from a public image.