daggerok/kafka

By daggerok

Updated over 6 years ago

Kafka docker image

Image
1

1.6K

kafka Build Status

Docker automated build running daggerok/embedded-kafka app

  • based on openjdk:8u171-jre-alpine3.8 image

using: kafka 2

Available tags:

confluent

spring cloud kafka

daggerok/embedded-kafka

Exposed ports:

  • 2128 - zookeeper
  • 9092 - kafka broker
  • 9091 - health endpoint
Usage:

rapid development with docker

confluent


docker run --rm \
  -it --name kafka \
  -p 9092:9092 -p 2181:2181 \
  -e KAFKA_TOPICS=orders,invoices \
  daggerok/kafka:confluent-5.0.0

other images


docker run -it --rm --name run-my-kafka -p 2181:2181 -p 9092:9092 daggerok/kafka:v24
#docker run --rm --name run-my-kafka -p 2181:2181 -p 9092:9092 daggerok/kafka:v24
docker exec -it run-my-kafka /bin/bash

Dockerfile

confluent


FROM daggerok/kafka:confluent-5.0.0
ENV KAFKA_TOPICS='orderds,invoices'

other images


FROM daggerok/kafka:v24
ENV ZOOKEEPER_PORT=2181 \
    ZOOKEEPER_DIR=/home/appuser \
    KAFKA_PORT=9092 \
    KAFKA_TOPICS='orderds,invoices' \
    HTTP_PORT=8080 \
    HTTP_CONTEXT=/


docker build --no-cache -t my-kafka .
docker run -it --rm --name=run-my-kafka -p 2181:2181 -p 9092:9092 -p 9091:9091 my-kafka

docker-compose.yml

confluent


version: '2.1'
services:
  kafka:
    image: daggerok/kafka:confluent-5.0.0
    environment:
      KAFKA_TOPICS: orders,invoices
    ports:
    - '2181:2181'
    - '9092:9092'
    networks:
      backing-services:
        aliases:
        - k
        - z
        - zoo
        - kafka
        - broker
        - zookeeper
        - kafka-broker
networks:
  backing-services:
    driver: bridge

other images


version: '2.1'
services:
  kafka:
    #image: daggerok/kafka:v9
    #image: daggerok/kafka:v10
    image: daggerok/kafka:v24
    environment:
      HTTP_PORT: 8080
      HTP_CONTEXT: /
      ZOOKEEPER_PORT: 2181
      ZOOKEEPER_DIR: /home/appuser
      KAFKA_PORT: 9092
      KAFKA_TOPICS: orders,invoices
    ports:
    - '8080:8080'
    - '2181:2181'
    - '9092:9092'
    volumes:
    - 'kafka-data:/home'
    networks:
      backing-services:
        aliases:
        - k
        - z
        - zoo
        - kafka
        - broker
        - zookeeper
        - kafka-broker
volumes:
  kafka-data: {}
networks:
  backing-services:
    driver: bridge


docker-compose up
# ...
docker-compose down -v

openjdk8 (no jce policy)


docker run -p 2181:2181 -p 9092:9092 daggerok/kafka:spring-cloud-cli-openjdk8-ubuntu

or use sources:


git clone https://github.com/daggerok/kafka
cd kafka/
docker build --no-cache -f Dockerfile -t my-kafka .
docker run -it --rm --name=run-my-kafka -p 2181:2181 -p 9092:9092 my-kafka

different kafka images

debian, rhel


version: '2.1'
services:
  kafka:
    #image: daggerok/kafka:v11
    #image: daggerok/kafka:v12
    #image: daggerok/kafka:v13
    #image: daggerok/kafka:v14
    #image: daggerok/kafka:v15
    #image: daggerok/kafka:v16
    #image: daggerok/kafka:v17
    #image: daggerok/kafka:v18
    #image: daggerok/kafka:v19
    #image: daggerok/kafka:v20
    #image: daggerok/kafka:v21
    #image: daggerok/kafka:v22
    image: daggerok/kafka:v23
    environment:
      HTTP_PORT: 8080
      HTP_CONTEXT: /
      ZOOKEEPER_PORT: 2181
      ZOOKEEPER_DIR: ./zk
      KAFKA_PORT: 9092
      KAFKA_TOPICS: orders,invoices
    ports:
    - '8080:8080'
    - '2181:2181'
    - '9092:9092'
    volumes:
    - 'kafka-data:/root'
    networks:
      backing-services:
        aliases:
        - k
        - z
        - zoo
        - kafka
        - broker
        - zookeeper
        - kafka-broker
volumes:
  kafka-data: {}
networks:
  backing-services:
    driver: bridge

spring cloud kafka


version: '2.1'
services:
  kafka:
    #image: daggerok/kafka:spring-cloud-cli-oraclejdk8-ubuntu
    #image: daggerok/kafka:spring-cloud-cli-openjdk8-ubuntu
    #image: daggerok/kafka:spring-cloud-cli-v19
    #image: daggerok/kafka:spring-cloud-cli-v17
    #image: daggerok/kafka:spring-cloud-cli-v16
    #image: daggerok/kafka:spring-cloud-cli-v15
    image: daggerok/kafka:spring-cloud-cli-v12
    environment:
      ZOOKEEPER_PORT: 2181
      KAFKA_PORT: 9092
    ports:
    - '2181:2181'
    - '9092:9092'
    networks:
      backing-services:
        aliases:
        - k
        - z
        - zoo
        - kafka
        - broker
        - zookeeper
        - kafka-broker
networks:
  backing-services:
    driver: bridge

read more:

Docker Pull Command

docker pull daggerok/kafka