Composer stack
version: '3'
services:
etherium:
mem_limit: 8g
stop_grace_period: 2m
stop_signal: SIGINT
container_name: ETH_node
restart: unless-stopped
image: ethereum/client-go
ports: [8545:8545, 8547:8547, 30303:30303]
entrypoint: 'geth --datadir "/data" --syncmode "full" --http --http.addr 0.0.0.0 --cache 4048 --maxpeers 50'
volumes:
- /external_data/ETH:/data
security_opt: [no-new-privileges:true]
eth-exporter:
image: hunterlong/gethexporter
container_name: ETH_exporter
restart: unless-stopped
ports: [9090:9090]
environment:
GETH: "http://192.168.30.43:8545"
DELAY: 3000
Bardzo ważna jest linia stop_grace_period: 2m
oraz stop_signal: SIGINT
, powoduje ona, że po wydaniu komendy stop kontener będzie miał 5minut na
zapisanie danych i zakończenie pracy.
Grafana dashboard
Zdalne wywołanie RPC
geth --exec "new Date(eth.getBlock(eth.blockNumber).timestamp*1e3)" attach http://192.168.30.43:8545