Setup OP Geth Node
Setup OP Geth Node. This is a non-voting RPC node that users interact with for Eth L2 transactions.
Setting up an OP Geth Node needs three services: OP Geth, Rhea, and Light Client (also called Proxy). This OP Geth node serves as a non-voting RPC node that enables executing Eth L2 transactions.
OP Geth has been modified to calculate gas based on the required Solana compute. It retrieves the required gas value by querying Light Client.
Rhea picks up Eth transactions from OP Geth mempool, composes them into Solana transactions, and submits them to Solana for sequencing.
Solana's consensus voting nodes execute and vote on the ordering of these transactions.
Machine specs
We recommend using a machine with: Ubuntu 32GB RAM, 16 cores, 1 TB space
Run Docker containers
Run docker containers sequentially in the order below.
1. Light Client
Light Client provides an Ethereum interface to access Solana state, which includes providing gas estimates to Geth.
Airdrop SOLs to Light Client keypair as it will be used to pay for Solana transactions. Use https://faucet.solana.com. If you run into problems with airdrop, contact us on our Discord or Telegram.
The command below shows Light Client keypair address to input for faucet.
Run the Light Client Docker container.
Wait until the logs print out "Starting the RPC server at 0.0.0.0:9090".
2. Geth
Run Geth. Geth is the rollup client that accepts and executes Eth L2 transactions, and provides transaction results to the user. It is a non-voting RPC node.
If you are setting up your L2 on your local machine, comment out Geth volumes in rome-setup/docker/docker-compose.yml.
However if you are setting up your L2 on a remote server, keep the Geth volumes uncommented.
Run the Geth container.
Wait until the logs print out "Server listening at http://localhost:3000".
3. Rhea
Rhea takes rollup transactions from Geth, packages them as Rome (Solana) transactions, and submits them to Solana for sequencing.
Airdrop SOLs to Rhea keypair as it will be used to pay for Solana transactions. Use https://faucet.solana.com. If you run into problems with airdrop, contact us on our Discord or Telegram.
The command below shows Rhea keypair address to input for faucet.
Run the Rhea Docker container.
Wait until the logs to print out "Polling: http://geth:8545".
Docker container overview
The docker containers started above are listed below:
Docker Container | Purpose |
---|---|
proxy | Rome Light Client App |
geth | OP Geth App |
rhea | Rhea App |
Last updated