☑️Ethereum RPC node

Recommended Hardware: 4 Cores, 16GB RAM, 1TB of storage (NVME)

1. Firts if you only have root user, add one user:

adduser <NAME_OF_USER>

Write your password 2 times and press Enter as many times as necessary to set default options.

2. Modify /etc/sudoers

sudo nano /etc/sudoers

Scroll down with ⬇️ down key and where says:

# User privilege specification
root    ALL=(ALL:ALL) ALL

Add your user created in step 1, the archive must should look like this:

# User privilege specification
root    ALL=(ALL:ALL) ALL
NAME_OF_USER ALL=(ALL:ALL) ALL

Then, press Ctrl+o to save and press Enter. Then, Ctrl+x to exit.

3. Change to the new user:

su <NAME_OF_USER>

4. Download eth-docker:

(copy the entire command that is in this box)

cd ~ && git clone https://github.com/eth-educators/eth-docker.git && \
cd eth-docker && sudo ./ethd install

Type Y, yes andpress Enter when the CLI requires you.

5. Config the node and the clients:

sudo ./ethd config
  • Frist: Select ethereum mainnet (Press Enter on ETH mainnet).

  • Second: Select RPC node (Press Enter on RPC node).

  • Third: Select Lighthouse (Press Enter on Lighthouse).

  • Fourth: Select Geth (Press Enter on Geth).

  • Fiveth: CL rapid sync → Select yes and then press Tab to go to ok and press Enter.

  • Sixth: MEV boost → Select no.

  • Seventh: Grafana Dashboard → Select yes.

  • Eighth: Paste using right-click with the mouse your public address, and press Tab to go to ok and press Enter.

6. Update .env file to open ports:

nano .env

Where says:

COMPOSE_FILE=lighthouse-cl-only.yml:geth.yml:grafana.yml:grafana-shared.yml

You must add this at the end → :el-shared.yml:cl-shared.yml

Should look like this:

COMPOSE_FILE=lighthouse-cl-only.yml:geth.yml:grafana.yml:grafana-shared.yml:el-shared.yml:cl-shared.yml

Then, press Ctrl+o to save and press Enter.

Then, press Ctrl+x to exit.

7. Run the node:

sudo ./ethd up

8. Open Grafana:

  • To see your IP, use this command:

hostname -I | awk '{print $1}'
  • In your browser, search: http://<YOUR_IP>:3000

  • Then, you must log in with credentials: User: admin Password: admin

Congrats, you have your own RPC on ETH mainnet!

You can use the RPCs:

  • http → http://<YOUR_IP>:8545

  • ws → ws://<YOUR_IP>:8546

  • beacon → http://<YOUR_IP>:5052

Last updated