version: '2'

services:

  zookeeper:
    image: wurstmeister/zookeeper:3.4.6
    ports:
      - "2181:2181"
    environment:
      LOG_DIR: "/tmp/logs"

  kafka:
    image: wurstmeister/kafka:2.12-2.2.1
    depends_on:
      - zookeeper
    ports:
      - "9092:9092"
    expose:
      - "9093"
    environment:
      KAFKA_CREATE_TOPICS: "kogito-tracing-decision:1:1,kogito-tracing-model:1:1,trusty-explainability-request:1:1,trusty-explainability-result:1:1"
      KAFKA_ADVERTISED_LISTENERS: INSIDE://kafka:9093,OUTSIDE://localhost:9092
      KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_LISTENERS: INSIDE://0.0.0.0:9093,OUTSIDE://0.0.0.0:9092
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      LOG_DIR: "/tmp/logs"

  kafdrop:
    image: obsidiandynamics/kafdrop
    depends_on:
      - kafka
    ports:
      - "9000:9000"
    environment:
      KAFKA_BROKERCONNECT: "kafka:9093"
      JVM_OPTS: "-Xms32M -Xmx64M"
      SERVER_SERVLET_CONTEXTPATH: "/"

  infinispan:
    image: infinispan/server:10.1.5.Final
    ports:
      - "11222:11222"
    environment:
      USER: admin
      PASS: admin

