Skip to content

Instantly share code, notes, and snippets.

@mkanoor
Last active March 11, 2025 15:02
Show Gist options
  • Select an option

  • Save mkanoor/bb60926f0ffdaa6ff4630756ff54615d to your computer and use it in GitHub Desktop.

Select an option

Save mkanoor/bb60926f0ffdaa6ff4630756ff54615d to your computer and use it in GitHub Desktop.
Kafka docker compose with Mutual TLS
---
version: '2'
services:
broker:
image: apache/kafka:latest
hostname: broker
container_name: broker
ports:
- '9093:9093'
- '49093:49093'
volumes:
- ./secrets:/etc/kafka/secrets
environment:
KAFKA_NODE_ID: 1
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: 'SSL:SSL,CONTROLLER:PLAINTEXT,SSL-INTERNAL:SSL,INTERNAL:SSL'
KAFKA_ADVERTISED_LISTENERS: 'SSL://localhost:9093,SSL-INTERNAL://broker:19093,INTERNAL://host.containers.internal:49093'
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
KAFKA_GROUP_INITIAL_REBALANCE_DELAY_MS: 0
KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
KAFKA_PROCESS_ROLES: 'broker,controller'
KAFKA_CONTROLLER_QUORUM_VOTERS: '1@broker:29093'
KAFKA_LISTENERS: 'SSL://:9093,CONTROLLER://:29093,SSL-INTERNAL://:19093,INTERNAL://:49093'
KAFKA_INTER_BROKER_LISTENER_NAME: 'SSL-INTERNAL'
KAFKA_CONTROLLER_LISTENER_NAMES: 'CONTROLLER'
KAFKA_LOG_DIRS: '/tmp/kraft-combined-logs'
CLUSTER_ID: '4L6g3nShT-eMCtK--X86sw'
KAFKA_SSL_KEYSTORE_FILENAME: 'kafka01.keystore.jks'
KAFKA_SSL_KEYSTORE_CREDENTIALS: 'kafka_keystore_creds'
KAFKA_SSL_KEY_CREDENTIALS: 'kafka_ssl_key_creds'
KAFKA_SSL_TRUSTSTORE_FILENAME: 'kafka.truststore.jks'
KAFKA_SSL_TRUSTSTORE_CREDENTIALS: 'kafka_truststore_creds'
KAFKA_SSL_CLIENT_AUTH: 'required'
KAFKA_SSL_ENDPOINT_IDENTIFICATION_ALGORITHM: ""
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment