services:
  exporter:
    image: docker.verbis.dkfz.de/ccp/dktk-exporter:latest
    container_name: bridgehead-ccp-exporter
    environment:
      LOG_LEVEL: "INFO"
      EXPORTER_API_KEY: "${EXPORTER_API_KEY}" # Set in exporter-setup.sh
      CROSS_ORIGINS: "https://${HOST}"
      EXPORTER_DB_USER: "exporter"
      EXPORTER_DB_PASSWORD: "${EXPORTER_DB_PASSWORD}" # Set in exporter-setup.sh
      EXPORTER_DB_URL: "jdbc:postgresql://exporter-db:5432/exporter"
      HTTP_RELATIVE_PATH: "/ccp-exporter"
      HTTP_SERVLET_REQUEST_SCHEME: "https"
      OPAL_ADMINISTRATOR_PASSWORD: "${LDM_PASSWORD}"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.exporter_ccp.rule=PathPrefix(`/ccp-exporter`)"
      - "traefik.http.services.exporter_ccp.loadbalancer.server.port=8092"
      - "traefik.http.routers.exporter_ccp.tls=true"
      - "traefik.http.middlewares.exporter_ccp_strip.stripprefix.prefixes=/ccp-exporter"
      - "traefik.http.routers.exporter_ccp.middlewares=exporter_ccp_strip"
  #    volumes:
  #      - "bridgehead-exporter:/app/exporter-files"

  exporter-db:
    image: docker.verbis.dkfz.de/cache/postgres:15.1-alpine
    container_name: bridgehead-ccp-exporter-db
    environment:
      POSTGRES_USER: "exporter"
      POSTGRES_PASSWORD: "${EXPORTER_DB_PASSWORD}" # Set in exporter-setup.sh
      POSTGRES_DB: "exporter"
    volumes:
      # Please, do NOT REMOVE this volume until we find a solution to save Lens-queries to be executed in the explorer.
      - "bridgehead-exporter-db:/var/lib/postgresql/data"

  reporter:
    image: docker.verbis.dkfz.de/ccp/dktk-reporter:latest
    container_name: bridgehead-ccp-reporter
    environment:
      LOG_LEVEL: "INFO"
      CROSS_ORIGINS: "https://${HOST}"
      HTTP_RELATIVE_PATH: "/ccp-reporter"
      EXPORTER_API_KEY: "${EXPORTER_API_KEY}" # Set in exporter-setup.sh
      EXPORTER_URL: "http://exporter:8092"
      LOG_FHIR_VALIDATION: "false"
      HTTP_SERVLET_REQUEST_SCHEME: "https"
    #    volumes:
    #      - "bridgehead-reporter:/app/reports"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.reporter_ccp.rule=PathPrefix(`/ccp-reporter`)"
      - "traefik.http.services.reporter_ccp.loadbalancer.server.port=8095"
      - "traefik.http.routers.reporter_ccp.tls=true"
      - "traefik.http.middlewares.reporter_ccp_strip.stripprefix.prefixes=/ccp-reporter"
      - "traefik.http.routers.reporter_ccp.middlewares=reporter_ccp_strip"

volumes:
  bridgehead-exporter-db:
    name: "bridgehead-exporter-db"
#  bridgehead-exporter:
#    name: "bridgehead-exporter"
#  bridgehead-reporter:
#    name: "bridgehead-reporter"