Frequently Asked Questions ❓
What is Juno?
Juno is a Go implementation of a Starknet full-node client created by Nethermind to allow node operators to easily and reliably support the network and advance its decentralisation goals. Juno supports various node setups, from casual to production-grade indexers.
How can I run Juno?
Check out the Running Juno guide to learn the simplest and fastest ways to run a Juno node. You can also check the Running Juno on GCP guide to learn how to run Juno on GCP.
What are the hardware requirements for running Juno?
We recommend running Juno with at least 4GB of RAM and 250GB of SSD storage. Check out the Hardware Requirements for more information.
How can I configure my Juno node?
You can configure Juno using command line parameters, environment variables, and a YAML configuration file. Check out the Configuring Juno guide to learn their usage and precedence.
How can I update my Juno node?
Check out the Updating Juno guide for instructions on updating your node to the latest version.
How can I interact with my Juno node?
How can I monitor my Juno node?
Juno captures metrics data using Prometheus, and you can visualise them using Grafana. Check out the Monitoring Juno guide to get started.
Do node operators receive any rewards, or is participation solely to support the network?
Presently, running a node does not come with direct rewards; its primary purpose is contributing to the network's functionality and stability. However, operating a node provides valuable educational benefits and deepens your knowledge of the network's operation.
How can I view Juno logs from Docker?
You can view logs from the Docker container using the following command:
docker logs -f juno
How can I get real-time updates of new blocks?
The WebSocket interface provides a juno_subscribeNewHeads
method that emits an event when new blocks are added to the blockchain.
Does Juno provide snapshots to sync with Starknet quickly?
Yes, Juno provides snapshots for both the Starknet Mainnet and Sepolia networks. Check out the Database Snapshots guide to get started.
How can I contribute to Juno?
You can contribute to Juno by running a node, starring on GitHub, reporting bugs, and suggesting new features. Check out the Contributions and Partnerships page for more information.
I noticed a warning in my logs saying: Failed storing Block {"err": "unsupported block version"}. How should I proceed?
You can fix this problem by updating to the latest version of Juno. Check for updates and install them to maintain compatibility with the latest block versions.
After updating Juno, I receive error while migrating DB. How should I proceed?
This error suggests your database is corrupted, likely due to the node being interrupted during migration. This can occur if there are insufficient system resources, such as RAM, to finish the process. The only solution is to resynchronise the node from the beginning. To avoid this issue in the future, ensure your system has adequate resources and that the node remains uninterrupted during upgrades.
I receive Error: unable to verify latest block hash; are the database and --network option compatible? while running Juno. How should I proceed?
To resolve this issue, ensure that the eth-node
configuration aligns with the network
option for the Starknet network.
I receive process <PID> killed and ./build/juno: invalid signature (code or signature have been modified) while running the binary on macOS. How should I proceed?
You need to re-sign the binary to resolve this issue using the following command:
codesign --sign - ./build/juno