티스토리 뷰

공부

[kafka] docker-compose

승가비 2022. 11. 3. 15:29
728x90
version: "3.9"
services:
  zookeeper:
    platform: linux/x86_64
    image: wurstmeister/zookeeper
    container_name: seunggabi-zookeeper
    restart: always
    ports:
      - 2181:2181
    networks:
      seunggabi-net:
        ipv4_address: 172.16.240.17

  kafka:
    platform: linux/x86_64
    image: confluentinc/cp-kafka
    container_name: seunggabi-kafka
    restart: always
    depends_on:
      - zookeeper
    ports:
      - 9092:9092
    environment:
      KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
      KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
      KAFKA_ADVERTISED_LISTENERS: PLAINTEXT://seunggabi-kafka:29092,PLAINTEXT_HOST://localhost:9092
      KAFKA_AUTO_CREATE_TOPICS_ENABLE: true
      KAFKA_NUM_PARTITIONS: 1
      KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1
      KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR: 1
      KAFKA_TRANSACTION_STATE_LOG_MIN_ISR: 1
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    networks:
      seunggabi-net:
        ipv4_address: 172.16.240.18

  schema-registry:
    platform: linux/x86_64
    image: confluentinc/cp-schema-registry
    container_name: seunggabi-schema-registry
    restart: always
    depends_on:
      - zookeeper
      - kafka
    environment:
      SCHEMA_REGISTRY_KAFKASTORE_BOOTSTRAP_SERVERS: PLAINTEXT://localhost:9092
      SCHEMA_REGISTRY_HOST_NAME: schema-registry
      SCHEMA_REGISTRY_LISTENERS: http://0.0.0.0:8085
      SCHEMA_REGISTRY_LOG4J_ROOT_LOGLEVEL: INFO
    ports:
      - 8085:8085
    networks:
      seunggabi-net:
        ipv4_address: 172.16.240.19
    links:
      - kafka
    extra_hosts:
      - localhost:172.16.240.18

  akhq:
    image: tchiotludo/akhq
    container_name: seunggabi-akhq
    restart: always
    environment:
      AKHQ_CONFIGURATION: |
        akhq:
          connections:
            docker-kafka:
              properties:
                bootstrap.servers: localhost:9092
              schema-registry:
                url: http://schema-registry:8085
    ports:
      - 9999:8080
    depends_on:
      - zookeeper
      - kafka
      - schema-registry
    networks:
      seunggabi-net:
        ipv4_address: 172.16.240.16
    links:
      - kafka
      - schema-registry
    extra_hosts:
      - localhost:172.16.240.18
      - schema-registry:172.16.240.19

networks:
  seunggabi-net:
    ipam:
      driver: default
      config:
        - subnet: 172.16.240.0/24

https://velog.io/@6democratickim9/How-To-Use-%EC%B9%B4%ED%94%84%EC%B9%B4-%EB%8F%84%EC%BB%A4-%EC%9D%B4%EB%AF%B8%EC%A7%80

 

How To Use 카프카 도커 이미지

도커 이미지 쓸거면 이거 쓰기이거 있어야 외부 주소로 노출해서 클라이언트가 연결시킴 -> 안그러면 내부 호스트 주소로 연결돼는데 만약에 도달 못하면 그게 문제가 되는것일단 LISTENER이 카프

velog.io

 

728x90
댓글