version: "3.2"
services:
  ipld-eth-server:
    restart: unless-stopped
    depends_on:
      ipld-eth-db:
        condition: service_healthy
    image: cerc/ipld-eth-server:local
    environment:
      IPLD_SERVER_GRAPHQL: "true"
      IPLD_POSTGRAPHILEPATH: http://graphql:5000
      ETH_SERVER_HTTPPATH: 0.0.0.0:8081
      ETH_SERVER_GRAPHQL: "true"
      ETH_SERVER_GRAPHQLPATH: 0.0.0.0:8082
      VDB_COMMAND: "serve"
      ETH_CHAIN_CONFIG: "/tmp/chain.json"
      DATABASE_NAME: cerc_testing
      DATABASE_HOSTNAME: ipld-eth-db
      DATABASE_PORT: 5432
      DATABASE_USER: "vdbm"
      DATABASE_PASSWORD: "password"
      ETH_CHAIN_ID: 99
      ETH_FORWARD_ETH_CALLS: $eth_forward_eth_calls
      ETH_PROXY_ON_ERROR: $eth_proxy_on_error
      ETH_HTTP_PATH: $eth_http_path
    volumes:
      - type: bind
        source: ../config/ipld-eth-server/chain.json
        target: /tmp/chain.json
    ports:
      - "127.0.0.1:8081:8081"
      - "127.0.0.1:8082:8082"
    healthcheck:
      test: ["CMD", "nc", "-v", "localhost", "8081"]
      interval: 20s
      timeout: 5s
      retries: 15
      start_period: 5s