version: "3.8"

services:
  schema-registry:
    build:
      context: .
    hostname: schema-registry
    container_name: schema-registry
    ports:
      - "8081:8081"
    healthcheck:
      test: ["CMD-SHELL", "/usr/local/bin/healthcheck.sh"]
      interval: 5s
      timeout: 5s
      retries: 60
    environment:
      Environment: local
      # We use the local-<username> prefix here to isolate this environment from others.
      # The $USER environment variable is defined by the shell, no need to set it manually in .env.
      SCHEMA_REGISTRY_GROUP_UNIQUE_IDENTIFIER: local-${USER}
      SCHEMA_REGISTRY_KAFKASTORE_TOPIC: _schemas-local-${USER}
      SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: "SSL://b-1.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094,SSL://b-2.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094,SSL://b-3.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094"

  akhq:
    image: tchiotludo/akhq
    hostname: akhq
    container_name: akhq
    depends_on:
      - schema-registry
    ports:
      - "8080:8080"
    environment:
      JVM_OPTS: -Xms64M -Xmx128M
      AKHQ_CONFIGURATION: |
        akhq:
          connections:
            local-dev:
              properties:
                bootstrap.servers: "b-1.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094,b-2.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094,b-3.dev-managed-kafka-cdc.rk4es0.c11.kafka.us-east-1.amazonaws.com:9094"
                security.protocol: SSL
              schema-registry:
                url: "http://schema-registry:8081"
                type: confluent
