server/Kafka/docker-compose.yml

45 lines
1.3 KiB
YAML
Raw Normal View History

2025-02-06 14:40:06 +00:00
version: '3.8'
services:
zookeeper:
image: confluentinc/cp-zookeeper:latest
container_name: zookeeper
2025-02-06 15:23:31 +00:00
restart: unless-stopped
2025-02-06 14:40:06 +00:00
environment:
ZOOKEEPER_CLIENT_PORT: 2181
ZOOKEEPER_TICK_TIME: 2000
networks:
- kafka_network
kafka:
image: confluentinc/cp-kafka:latest
container_name: kafka
2025-02-06 15:23:31 +00:00
restart: unless-stopped
2025-02-06 14:40:06 +00:00
depends_on:
- zookeeper
networks:
- kafka_network
- proxy
environment:
KAFKA_BROKER_ID: 1
KAFKA_ZOOKEEPER_CONNECT: "zookeeper:2181"
KAFKA_HOSTNAME: "kafka.luke-else.co.uk"
KAFKA_LISTENERS: "INTERNAL://kafka:9092,EXTERNAL://0.0.0.0:9093"
KAFKA_ADVERTISED_LISTENERS: "INTERNAL://kafka:9092,EXTERNAL://kafka.luke-else.co.uk:9093"
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: "INTERNAL:PLAINTEXT,EXTERNAL:PLAINTEXT"
KAFKA_INTER_BROKER_LISTENER_NAME: "INTERNAL"
KAFKA_AUTO_CREATE_TOPICS_ENABLE: "true"
2025-02-06 14:40:06 +00:00
labels:
- "traefik.enable=true"
- "traefik.tcp.routers.kafka.rule=HostSNI(`kafka.luke-else.co.uk`)"
2025-02-06 14:40:06 +00:00
- "traefik.tcp.routers.kafka.entrypoints=kafka"
- "traefik.tcp.routers.kafka.service=kafka"
2025-02-07 11:13:46 +00:00
- "traefik.tcp.routers.kafka.tls=true" # Enable TLS
- "traefik.tcp.services.kafka.loadbalancer.server.port=9093"
2025-02-06 14:40:06 +00:00
networks:
kafka_network:
driver: bridge
proxy:
external: true