docker-compose.ramdisk.yml raw

   1  # Docker Compose override file for ramdisk-based benchmarks
   2  # Uses /dev/shm (tmpfs) for all database storage to eliminate disk I/O bottlenecks
   3  # and measure raw relay performance.
   4  #
   5  # Usage: docker compose -f docker-compose.yml -f docker-compose.ramdisk.yml up
   6  # Or via run-benchmark.sh --ramdisk
   7  
   8  version: "3.8"
   9  
  10  services:
  11    # Next.orly.dev relay with Badger
  12    next-orly-badger:
  13      volumes:
  14        - /dev/shm/benchmark/next-orly-badger:/data
  15  
  16    # Next.orly.dev relay with Neo4j
  17    next-orly-neo4j:
  18      volumes:
  19        - /dev/shm/benchmark/next-orly-neo4j:/data
  20  
  21    # Neo4j database
  22    neo4j:
  23      volumes:
  24        - /dev/shm/benchmark/neo4j:/data
  25        - /dev/shm/benchmark/neo4j-logs:/logs
  26  
  27    # Khatru with SQLite
  28    khatru-sqlite:
  29      volumes:
  30        - /dev/shm/benchmark/khatru-sqlite:/data
  31  
  32    # Khatru with Badger
  33    khatru-badger:
  34      volumes:
  35        - /dev/shm/benchmark/khatru-badger:/data
  36  
  37    # Relayer basic example
  38    relayer-basic:
  39      volumes:
  40        - /dev/shm/benchmark/relayer-basic:/data
  41  
  42    # Strfry
  43    strfry:
  44      volumes:
  45        - /dev/shm/benchmark/strfry:/data
  46        - ./configs/strfry.conf:/etc/strfry.conf
  47  
  48    # Nostr-rs-relay
  49    nostr-rs-relay:
  50      volumes:
  51        - /dev/shm/benchmark/nostr-rs-relay:/data
  52        - ./configs/config.toml:/app/config.toml
  53  
  54    # Rely-SQLite relay
  55    rely-sqlite:
  56      volumes:
  57        - /dev/shm/benchmark/rely-sqlite:/data
  58  
  59    # PostgreSQL for relayer-basic
  60    postgres:
  61      volumes:
  62        - /dev/shm/benchmark/postgres:/var/lib/postgresql/data
  63