Skip to content

Instantly share code, notes, and snippets.

@davimi
Created March 17, 2023 15:44
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save davimi/36c4d173f27fa2a37f959b133b01a922 to your computer and use it in GitHub Desktop.
Save davimi/36c4d173f27fa2a37f959b133b01a922 to your computer and use it in GitHub Desktop.
Debezium 2.1.2 Kafka Connect image with Avro support
ARG DEBEZIUM_VERSION=2.1.2
FROM debezium/connect:${DEBEZIUM_VERSION}.Final@sha256:5716ef9d12a7f2ee253226eef872b3903d7df4407210064dc0ac3a8df815bca6
ENV MAVEN_DEP_DESTINATION=${KAFKA_HOME}/libs
RUN mkdir -p ${MAVEN_DEP_DESTINATION}
ARG AVRO_VERSION=1.10.1
ARG CONFLUENT_VERSION=7.0.1
ARG GUAVA_VERSION=31.0.1-jre
RUN docker-maven-download confluent kafka-connect-avro-converter "$CONFLUENT_VERSION" fd03a1436f29d39e1807e2fb6f8e415a && \
docker-maven-download confluent kafka-connect-avro-data "$CONFLUENT_VERSION" d27f30e9eca4ef1129289c626e9ce1f1 && \
docker-maven-download confluent kafka-avro-serializer "$CONFLUENT_VERSION" c72420603422ef54d61f493ca338187c && \
docker-maven-download confluent kafka-schema-serializer "$CONFLUENT_VERSION" 9c510db58119ef66d692ae172d5b1204 && \
docker-maven-download confluent kafka-schema-registry-client "$CONFLUENT_VERSION" 7449df1f5c9a51c3e82e776eb7814bf1 && \
docker-maven-download confluent common-config "$CONFLUENT_VERSION" aab5670de446af5b6f10710e2eb86894 && \
docker-maven-download confluent common-utils "$CONFLUENT_VERSION" 74bf5cc6de2748148f5770bccd83a37c && \
docker-maven-download central org/apache/avro avro "$AVRO_VERSION" 35469fee6d74ecbadce4773bfe3a204c && \
docker-maven-download central com/google/guava guava "$GUAVA_VERSION" bb811ca86cba6506cca5d415cd5559a7
ENV JMX_PROMETHEUS_VERSION 0.16.1
ENV JMX_PROMETHEUS_JAR "jmx_prometheus_javaagent-${JMX_PROMETHEUS_VERSION}.jar"
ENV JMX_PROMETHEUS_FOLDER "/kafka/etc"
ENV JMX_PROMETHEUS_SHA256 "0ddc6834f854c03d5795305193c1d33132a24fbd406b4b52828602f5bc30777e"
RUN curl -f -o "${JMX_PROMETHEUS_JAR}" -L "https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/${JMX_PROMETHEUS_VERSION}/${JMX_PROMETHEUS_JAR}" \
&& test $(sha256sum "${JMX_PROMETHEUS_JAR}" | awk '{print $1}') = "${JMX_PROMETHEUS_SHA256}" \
&& mkdir "${JMX_PROMETHEUS_FOLDER}" \
&& mv "${JMX_PROMETHEUS_JAR}" "${JMX_PROMETHEUS_FOLDER}/${JMX_PROMETHEUS_JAR}"
ADD debezium_prometheus.yaml ${JMX_PROMETHEUS_FOLDER}/config.yaml
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["start"]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment