/graphprotocol-mainnet-docker

Graph Protocol Mainnet Docker Guide by StakeSquid. Easy to use, one-stop gateway into the Web3 universe via The Graph.

Primary LanguageShellMIT LicenseMIT

Graph Protocol Mainnet Docker Compose

This repository is a one-stop solution to the decentralized world of The Graph. It spins up all the necessary containers on one single machine including monitoring solutions and a CLI container that allows you to interact with the graph-nodes or the indexer-agent.

⚠️ WARNING: It is very important to read the entire documentation if you want to thoroughly understand the ins and outs of the Indexer Software Stack. If you're trying to binge through this documentation, no help will be offered, and you'll be sent back to RTFM. Thanks for understanding. 💖

The monitoring configuration runs with Prometheus, Grafana, cAdvisor, NodeExporter and alerting with AlertManager, a K8S template provided by the Graph team in the mission control repository during the Mission Control Testnet back in July 2020, and later adapted for mainnet using this configuration.

The advantage of using Docker, as opposed to systemd bare-metal setups, is that Docker is easy to manipulate and scale up if needed. We personally ran the whole testnet infrastructure on the same machine, including an Erigon Archive Node (not included in this docker build). The best part of using Docker is that the data is stored in named volumes on the docker host and can be exported / copied over to a bigger machine once more performance is needed.

Note that you need access to an Ethereum Archive Node that supports EIP-1898.

The setup for the archive node is not included in this docker setup.

The minimum configuration should to be the CPX51 VPS at Hetzner. Feel free to sign up using our referral link -- you can save 20€ and we get 10€ bonus for setting up some testnet nodes to support the network growth. :)

Table of contents