kafka docker 설정

치즈말랑이·2023년 2월 13일
0
version: '2'
services:
  zookeeper:
    image: confluentinc/cp-zookeeper:latest
    environment:
      ZOOKEEPER_CLIENT_PORT: 2181
      ZOOKEEPER_TICK_TIME: 2000
    ports:
      - 22181:2181

  kafka:
    image: confluentinc/cp-kafka:latest
    depends_on:
      - zookeeper
    ports:
      - 29092:29092
    environment:
      KAFKA_BROKER_ID: 1
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://kafka:9092,PLAINTEXT_HOST://localhost:29092
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
      KAFKA_INTER_BROKER_LISTENER_NAME: PLAINTEXT
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1

  kafka_ui:
    image: provectuslabs/kafka-ui:latest
    depends_on:
      - kafka
    ports:
      - 8080:8080
    environment:
      KAFKA_CLUSTERS_0_ZOOKEEPER: zookeeper:2181
      KAFKA_CLUSTERS_0_NAME: local
      KAFKA_CLUSTERS_0_BOOTSTRAPSERVERS: kafka:9092

docker exec -it 컨테이너id bash
접속해서 /etc/kafka 안에 설정파일들 있음
vim이 설치되어 있지 않아서 설치해야되는데, sudo 명령어가 안먹힌다.
su - 명령어는 루트비밀번호가 뭔지몰라서 검색해봤더니 애초에 배쉬 진입할때 root로 접속한다.
docker exec -u 0 -it mycontainer bash
https://stackoverflow.com/questions/28721699/root-password-inside-a-docker-container

docker-compose 설정
https://devocean.sk.com/blog/techBoardDetail.do?ID=164016

  1. single node
    https://pinggoopark.tistory.com/253

  2. replication 1, partition 1인데, 외부 접속이 가능하게 설정을 해놔서 서버에서 접속 가능 https://javascript.plainenglish.io/a-beginners-introduction-to-kafka-with-typescript-using-nestjs-7c92fe78f638

이미지파일 종류에 따라 환경변수 설정법이 다르다.
(wurstmeister/zookeeper, confluentinc)

도움받은 블로그들
로컬 PC에 카프카 클러스터 설치 및 실행: https://yooloo.tistory.com/68
[kafka] kafka cluster 구성 후 토픽 생성시의 현상 확인해보기: https://pinggoopark.tistory.com/472 -> 이 블로그 작성자분에게 정말 고마움을 느낀다.

내가 한것과 비슷하게 한 블로그
https://devocean.sk.com/blog/techBoardDetail.do?ID=164016

profile
공부일기

0개의 댓글