Kafka ‐ Docker Compose 구성 - dnwls16071/Backend_Study_TIL GitHub Wiki

📚 Docker Compose로 Kafka 구성하기

  • Zookeeper, kafka-ui, kafka를 아래와 같이 설정한다.

참고 레퍼런스

networks:
  kafka_network:

services:
  # Zookeeper를 메타데이터 저장소로 사용한다.
  # Port 2181번은 Zookeeper의 기본 포트이다.
  zookeeper:
    image: wurstmeister/zookeeper
    container_name: zookeeper
    ports:
      - "2181:2181"
    networks:
      - kafka_network

  kafka:
    image: wurstmeister/kafka
    container_name: kafka
    ports:
      - "9092:9092"
    environment:
      KAFKA_ADVERTISED_LISTENERS: INSIDE://kafka:29092,OUTSIDE://localhost:9092
      KAFKA_LISTENERS: INSIDE://:29092,OUTSIDE://0.0.0.0:9092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_AUTO_CREATE_TOPICS_ENABLE: true # 토픽 자동 생성 허용
    depends_on:
      - zookeeper
    networks:
      - kafka_network

  kafka-ui:
    container_name: kafka-ui
    image: provectuslabs/kafka-ui:latest
    ports:
      - "8081:8080" # Kafka UI 웹 접속 포트(Spring이 8080번에서 띄워지므로)
    depends_on:
      - kafka
    environment:
      DYNAMIC_CONFIG_ENABLED: 'true'
      KAFKA_CLUSTERS_0_NAME: wizard_local
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:29092
    networks:
      - kafka_network