services: hypersnap: image: farcasterorg/hypersnap:latest pull_policy: always # build: # For testing # context: . # dockerfile: Dockerfile init: true # Auto-reap zombie processes and forward process signals environment: RUST_BACKTRACE: "full" entrypoint: - "/bin/bash" - "-c" - | #!/bin/bash set -euo pipefail cat > config.toml <> config.toml exec $0 $@ # Now run the original command command: [ "./hypersnap", "--config-path", "config.toml" ] restart: always ports: - "3381:3381/tcp" - "3382:3382/udp" - "3383:3383/tcp" volumes: - .rocks:/app/.rocks - .rocks.snapshot:/app/.rocks.snapshot - ./validators.toml:/app/validators.toml:ro networks: - hypersnap ulimits: nofile: soft: 65535 hard: 65535 # 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 healthcheck: test: ["CMD", "nc", "-zv", "localhost", "8126"] interval: 30s timeout: 5s retries: 3 start_period: 1m ports: # - '80:80' # Graphite web # - '2003:2003' # Carbon line receiver # - '2004:2004' # Carbon pickle receiver # - '7002:7002' # Carbon cache query - '${STATSD_PUBLISH:-8125}:8125/udp' # StatsD - '${STATSD_ADMIN_PUBLISH:-8126}:8126' # StatsD admin networks: - hypersnap # 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 healthcheck: test: ["CMD", "curl", "-f", "localhost:3000/api/health"] interval: 30s timeout: 5s retries: 3 start_period: 1m # Mount the grafana config file volumes: - ./grafana/grafana.ini:/etc/grafana/grafana.ini - ./grafana/data:/var/lib/grafana # Persistent Grafana data ports: - '3000:3000' # Grafana web networks: - hypersnap networks: hypersnap: driver: bridge