Files
hub-monorepo/apps/hubble/docker-compose.yml
2023-09-01 13:54:13 -07:00

79 lines
2.1 KiB
YAML

# A working Docker Compose configuration file that starts a working hub.
#
# See https://www.thehubble.xyz/intro/install.html#installing-hubble for full
# instructions.
version: '3.9'
services:
hubble:
image: farcasterxyz/hubble:latest
restart: unless-stopped
command: [
"node", "--no-warnings", "build/cli.js", "start",
"--ip", "0.0.0.0",
"--gossip-port", "2282",
"--rpc-port", "2283",
"--eth-mainnet-rpc-url", "$ETH_MAINNET_RPC_URL",
"--l2-rpc-url", "$OPTIMISM_L2_RPC_URL",
"--network", "${FC_NETWORK_ID:-1}",
"-b", "${BOOTSTRAP_NODE:-/dns/nemes.farcaster.xyz/tcp/2282}",
"--statsd-metrics-server",
"$STATSD_METRICS_SERVER"
]
ports:
- '2282:2282' # Gossip
- '2283:2283' # RPC
volumes:
- ./.hub:/home/node/app/apps/hubble/.hub
- ./.rocks:/home/node/app/apps/hubble/.rocks
networks:
- my-network
logging:
driver: "json-file"
options:
max-size: "1g"
max-file: "2"
# Start if you want to expose your hub over grpc-web (for browser clients)
envoy:
image: envoyproxy/envoy:v1.26.1
depends_on:
- hubble
ports:
- '2285:2285'
volumes:
- ./envoy/envoy.yaml:/etc/envoy/envoy.yaml
networks:
- my-network
# Start this if you want perf metrics for your hubble node. Remember to start `grafana` as well.
statsd:
image: graphiteapp/graphite-statsd:1.1.10-5
restart: unless-stopped
ports:
# - '80:80' # Graphite web
# - '2003:2003' # Carbon line receiver
# - '2004:2004' # Carbon pickle receiver
# - '7002:7002' # Carbon cache query
- '8125:8125/udp' # StatsD
- '8126:8126' # StatsD admin
networks:
- my-network
# Start this if you want to see perf metrics for your hubble node. Remember to start `statsd` as well.
grafana:
image: grafana/grafana:10.0.3
restart: unless-stopped
# Mount the grafana config file
volumes:
- ./grafana/grafana.ini:/etc/grafana/grafana.ini
ports:
- '3000:3000' # Grafana web
networks:
- my-network
networks:
my-network: