mirror of
https://gitlab.com/pulsechaincom/erigon-pulse.git
synced 2025-01-03 01:27:38 +00:00
DockerCompose: add txpool and sentry (#4329)
This commit is contained in:
parent
07ee96a4d6
commit
3ab2f07294
@ -1,10 +1,21 @@
|
|||||||
# Most of Erigon's parts - can run inside and outside of Erigon (as separated processes).
|
# Erigon's parts - can run inside and outside of Erigon (as separated processes).
|
||||||
# For example: p2p sentry can work inside Erigon - or outside (even on another server), txpool also, JSON RPC also
|
# For example: p2p sentry can work inside Erigon - or outside (even on another server), txpool also, JSON RPC also
|
||||||
#
|
#
|
||||||
# This file is just an example: how to run most of Erigon's services as separated processes.
|
# This file is an example: how to start all Erigon's services as separated processes.
|
||||||
# By default: --datadir=/home/erigon/.local/share/erigon
|
|
||||||
|
|
||||||
version: '2.2'
|
# Default: --datadir=/home/erigon/.local/share/erigon
|
||||||
|
# Ports: `9090` execution engine (private api), `9091` sentry, `9092` consensus engine, `9093` snapshot downloader, `9094` TxPool
|
||||||
|
# Ports: `8545` json rpc, `8551` consensus json rpc, `30303` eth p2p protocol, `42069` bittorrent protocol,
|
||||||
|
|
||||||
|
# Connections: erigon -> (sentries, downloader), rpcdaemon -> (erigon, txpool), txpool -> erigon
|
||||||
|
|
||||||
|
# Basic erigon's service
|
||||||
|
x-erigon-service: &default-erigon-servie
|
||||||
|
image: thorax/erigon:${TAG:-latest}
|
||||||
|
pid: service:erigon # Use erigon's PID namespace. It's required to open Erigon's DB from another process (RPCDaemon local-mode)
|
||||||
|
volumes_from: [ erigon ]
|
||||||
|
restart: unless-stopped
|
||||||
|
mem_swappiness: 0
|
||||||
|
|
||||||
services:
|
services:
|
||||||
|
|
||||||
@ -12,38 +23,41 @@ services:
|
|||||||
image: thorax/erigon:${TAG:-latest}
|
image: thorax/erigon:${TAG:-latest}
|
||||||
build: .
|
build: .
|
||||||
command: |
|
command: |
|
||||||
erigon ${ERIGON_FLAGS-}
|
erigon ${ERIGON_FLAGS-} --private.api.addr=0.0.0.0:9090 --sentry.api.addr=sentry:9091 --downloader.api.addr=downloader:9093
|
||||||
--private.api.addr=0.0.0.0:9090 --downloader.api.addr=downloader:9093
|
--txpool.disable
|
||||||
--metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --pprof --pprof.addr=0.0.0.0 --pprof.port=6061
|
--metrics --metrics.addr=0.0.0.0 --metrics.port=6060 --pprof --pprof.addr=0.0.0.0 --pprof.port=6061
|
||||||
volumes:
|
volumes:
|
||||||
# This is "datadir". It's ok to mount sub-dirs of "datadir" to different drives
|
# It's ok to mount sub-dirs of "datadir" to different drives
|
||||||
- ${XDG_DATA_HOME:-~/.local/share}/erigon:/home/erigon/.local/share/erigon
|
- ${XDG_DATA_HOME:-~/.local/share}/erigon:/home/erigon/.local/share/erigon
|
||||||
|
restart: unless-stopped
|
||||||
|
mem_swappiness: 0
|
||||||
|
|
||||||
|
sentry:
|
||||||
|
<<: *default-erigon-servie
|
||||||
|
command: sentry ${SENTRY_FLAGS-} --sentry.api.addr=0.0.0.0:9091
|
||||||
ports: [ "30303:30303/tcp", "30303:30303/udp" ]
|
ports: [ "30303:30303/tcp", "30303:30303/udp" ]
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
rpcdaemon: # Service to server JSON-RCP API
|
downloader:
|
||||||
image: thorax/erigon:${TAG:-latest}
|
<<: *default-erigon-servie
|
||||||
command: |
|
command: downloader ${DOWNLOADER_FLAGS-} --downloader.api.addr=0.0.0.0:9093
|
||||||
rpcdaemon ${RPCDAEMON_FLAGS-}
|
ports: [ "42069:42069/tcp", "42069:42069/udp" ]
|
||||||
--private.api.addr=erigon:9090 --txpool.api.addr=erigon:9090
|
|
||||||
--http.addr=0.0.0.0 --http.vhosts=* --http.corsdomain=* --http.api=eth,debug,net --ws
|
|
||||||
pid: service:erigon # Use erigon's PID namespace. It's required to open Erigon's DB from another process (RPCDaemon local-mode)
|
|
||||||
volumes_from: [ erigon ]
|
|
||||||
ports: [ "8545:8545", "8551:8551" ]
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
downloader: # Service to download/seed historical data (need only if you use --syncmode=snap)
|
txpool:
|
||||||
image: thorax/erigon:${TAG:-latest}
|
<<: *default-erigon-servie
|
||||||
|
command: txpool ${TXPOOL_FLAGS-} --private.api.addr=erigon:9090 --txpool.api.addr=0.0.0.0:9094
|
||||||
|
|
||||||
|
rpcdaemon:
|
||||||
|
<<: *default-erigon-servie
|
||||||
command: |
|
command: |
|
||||||
downloader ${DOWNLOADER_FLAGS-}
|
rpcdaemon ${RPCDAEMON_FLAGS-} --http.addr=0.0.0.0 --http.vhosts=* --http.corsdomain=* --ws
|
||||||
--downloader.api.addr=0.0.0.0:9093
|
--private.api.addr=erigon:9090 --txpool.api.addr=txpool:9094
|
||||||
pid: service:erigon
|
ports: [ "8545:8545" ] # "8551:8551"
|
||||||
volumes_from: [ erigon ]
|
|
||||||
ports: [ "9093:9093", "42069:42069/tcp", "42069:42069/udp" ]
|
|
||||||
restart: unless-stopped
|
|
||||||
|
|
||||||
prometheus:
|
prometheus:
|
||||||
image: prom/prometheus:v2.35.0
|
image: prom/prometheus:v2.36.0
|
||||||
user: 1000:1000 # Uses erigon user from Dockerfile
|
user: 1000:1000 # Uses erigon user from Dockerfile
|
||||||
command: --log.level=warn --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/prometheus --storage.tsdb.retention.time=150d --web.console.libraries=/usr/share/prometheus/console_libraries --web.console.templates=/usr/share/prometheus/consoles
|
command: --log.level=warn --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.path=/prometheus --storage.tsdb.retention.time=150d --web.console.libraries=/usr/share/prometheus/console_libraries --web.console.templates=/usr/share/prometheus/consoles
|
||||||
ports: [ "9090:9090" ]
|
ports: [ "9090:9090" ]
|
||||||
@ -53,7 +67,7 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
grafana:
|
grafana:
|
||||||
image: grafana/grafana:8.5.2
|
image: grafana/grafana:8.5.4
|
||||||
user: 1000:1000 # Uses erigon user from Dockerfile
|
user: 1000:1000 # Uses erigon user from Dockerfile
|
||||||
ports: [ "3000:3000" ]
|
ports: [ "3000:3000" ]
|
||||||
volumes:
|
volumes:
|
||||||
@ -62,4 +76,3 @@ services:
|
|||||||
- ./cmd/prometheus/dashboards:/etc/grafana/provisioning/dashboards
|
- ./cmd/prometheus/dashboards:/etc/grafana/provisioning/dashboards
|
||||||
- ${XDG_DATA_HOME:-~/.local/share}/erigon-grafana:/var/lib/grafana
|
- ${XDG_DATA_HOME:-~/.local/share}/erigon-grafana:/var/lib/grafana
|
||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user