Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

We did an initial POC of our image and compared with other existing popular Apache Kafka docker images

Image Name

Image size (Uncompressed)

Startup total time (in seconds)

Time to start the kafka server inside container (in seconds)

Memory Used

Java version

Apache Kafka version

Proposed apache/kafka with Java 21

457.86 MB

3.885

0.816

382.4 MB

21

3.6.0 

Proposed apache/kafka with Java 17

460.76 MB

2.174

0.679

326 MB

17

3.5.1 

bitnami/kafka

517.16 MB

3.469

0.889

344 MB

17

3.5.1 

confluentinc/cp-kafka

876.4 MB

3.341

0.701

390.6 MB

11

7.5.0-ccs 

ubuntu/kafka

+ ubuntu/zookeeper

(Image doesn’t support kraft and source code is not public)

359.03 MB + 359.03 MB

1.425 + 0.636

0.827

335 MB + 78 MB

11

3.1.0 

Note: ubuntu/kafka is smaller as it is making use of Apache Kafka:3.1.0 and Java 11. With same AK and java versions, our image size was 367MB 

...

Adhering to the outlined constraints, image tagging can follow this format
<image-name>:<kafka-version>-<optional-suffix>

  • For example, for 3.

...

  • 7.

...

  • 0 version of kafka, the image name with tagging would be apache/kafka:3.7.0
  • In case of a CVE post 3.7.0, the name of the released image will depend on the section ReleaseProcess
    • apache/kafka:3.

...

    • 7.1 => Docker release along with Apache Kafka minor release
    • apache/kafka:3.

...

    • 7.

...

    • 0-1

...

    • => Only docker image release, hence added a suffix

...

Compatibility, Deprecation, and Migration Plan

...