HTTP request will be available on: http://<YOUR_IP>:8545
WS request will be available on: ws://<YOUR_IP>:8546
Monitoring will be available without credentials on: http://<YOUR_IP>:3000
Grafana has 3 dashboard: geth dashboard and sepolia dashboard (last simple all-in)
RECOMMENDATION: configure please your firewall rules (block all income to port 8545,8546,8086,3000 and use whitelist to access to your rpc, more about that can be found: https://github.com/chaifeng/ufw-docker)
- 4-CPU
- 8-GBRAM
- 1-Tb nvmeSSD
-
Update packages
sudo apt update && sudo apt upgrade -y
-
Install dependencies
sudo apt install curl build-essential git wget jq make gcc tmux -y
-
Install docker and docker compose
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh ./get-docker.sh docker version && docker compose version
-
Run Docker as a non-root user
sudo usermod -aG docker <your_user>
- Clone this repo to your server, navigate to goerli-rpc folder and spin up all docker containers
git clone https://github.com/andrii1890/sepolia-rpc.git cd sepolia-rpc docker compose up -d
- Add alias for docker logs
now you can simply find logs: geth_log, lighthouse_log, influxdb_log, prometheus_log, grafana_log, and all-in sepolia_log
echo "#Sepolia Alias" >> $HOME/.profile echo 'alias geth_log="docker logs sepolia-rpc-geth-1 -f"' >> $HOME/.profile echo 'alias prysm_log="docker logs sepolia-rpc-prysm-1 -f"' >> $HOME/.profile echo 'alias influxdb_log="docker logs sepolia-rpc-influxdb-1 -f"' >> $HOME/.profile echo 'alias prometheus_log="docker logs sepolia-rpc-prometheus-1 -f"' >> $HOME/.profile echo 'alias grafana_log="docker logs sepolia-rpc-grafana-1 -f"' >> $HOME/.profile echo 'alias sepolia_log="cd $HOME/sepolia-rpc/ && docker compose logs -f"' >> $HOME/.profile source $HOME/.profile
Understanding Geth's Dashboard https://geth.ethereum.org/docs/monitoring/understanding-dashboards
Go to: CONFIGURATION > Data Sources > InfluxDB > Scroll to InfluxDB Details and find Database (it wiil be clear) write: geth > Save & test
If you want to enable password entry, just delete previous grafana folder and modify grafana.ini
cd ~/sepolia-rpc/data/ && sudo rm -rf grafana
cat /dev/null > ~/sepolia-rpc/grafana/grafana.ini && nano ~/sepolia-rpc/grafana/grafana.ini
and paste this
[auth.anonymous]
enabled = false
org_role = Admin
# specify role for unauthenticated users
# org_role = Viewer
[auth.basic]
enabled = true
[security]
# disable creation of admin user on first start of grafana
disable_initial_admin_creation = false
# default admin user, created on startup
admin_user = admin
# default admin password, can be changed before first start of grafana, or in profile settings
admin_password = admin
# used for signing
secret_key = SW2YcwTIb9zpOOhoPsMm
# current key provider used for envelope encryption, default to static value specified by secret_key
encryption_provider = secretKey.v1