Telefonica / prometheus-kafka-adapter

Use Kafka as a remote storage database for Prometheus (remote write only)
Apache License 2.0
364 stars 135 forks source link

Can not build docker images #60

Closed Gallardot closed 3 years ago

Gallardot commented 3 years ago

Prometheus-Kafka-Adapter is a very good project that has helped us a lot. We made some improvements to it, so we need to rebuild the docker image.

But we're having some problems and we need some help.

docker build .
Sending build context to Docker daemon  200.7kB
Step 1/11 : FROM golang:1.14.4-alpine3.11 as build
 ---> f0b4dab84756
Step 2/11 : RUN echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories &&     echo "@edgecommunity http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories &&     apk add --no-cache alpine-sdk 'librdkafka@edgecommunity>=1.3.0' 'librdkafka-dev@edgecommunity>=1.3.0'
 ---> Running in 81072cef595d
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
  libssl1.1-1.1.1g-r0:
    breaks: openssl-dev-1.1.1j-r0[libssl1.1=1.1.1j-r0]
    satisfies: libcurl-7.67.0-r3[so:libssl.so.1.1]
               apk-tools-2.10.5-r0[so:libssl.so.1.1]
               libtls-standalone-2.9.1-r0[so:libssl.so.1.1]
               librdkafka-1.6.1-r0[so:libssl.so.1.1]
               openssl-1.1.1j-r0[so:libssl.so.1.1]
The command '/bin/sh -c echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories &&     echo "@edgecommunity http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories &&     apk add --no-cache alpine-sdk 'librdkafka@edgecommunity>=1.3.0' 'librdkafka-dev@edgecommunity>=1.3.0'' returned a non-zero code: 2

This appears to be a version dependency issue with libssl.

Gallardot commented 3 years ago

The travis-ci has the same problem.

docker build -t telefonica/prometheus-kafka-adapter .
Sending build context to Docker daemon  165.4kB
Step 1/11 : FROM golang:1.14.4-alpine3.11 as build
1.14.4-alpine3.11: Pulling from library/golang
Status: Downloaded newer image for golang:1.14.4-alpine3.11
 ---> f0b4dab84756
Step 2/11 : RUN echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories &&     echo "@edgecommunity http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories &&     apk add --no-cache alpine-sdk 'librdkafka@edgecommunity>=1.3.0' 'librdkafka-dev@edgecommunity>=1.3.0'
 ---> Running in 641c5d3f282c
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
ERROR: unsatisfiable constraints:
  libssl1.1-1.1.1g-r0:
    breaks: openssl-dev-1.1.1j-r0[libssl1.1=1.1.1j-r0]
    satisfies: libcurl-7.67.0-r3[so:libssl.so.1.1]
               apk-tools-2.10.5-r0[so:libssl.so.1.1]
               libtls-standalone-2.9.1-r0[so:libssl.so.1.1]
               librdkafka-1.6.1-r0[so:libssl.so.1.1]
               openssl-1.1.1j-r0[so:libssl.so.1.1]
The command '/bin/sh -c echo "@edge http://dl-cdn.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories &&     echo "@edgecommunity http://dl-cdn.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories &&     apk add --no-cache alpine-sdk 'librdkafka@edgecommunity>=1.3.0' 'librdkafka-dev@edgecommunity>=1.3.0'' returned a non-zero code: 2
The command "docker build -t telefonica/prometheus-kafka-adapter ." exited with 2.
palmerabollo commented 3 years ago

Yes, as stated here https://github.com/Telefonica/prometheus-kafka-adapter/blame/master/Dockerfile#L4 we included some edge versions, that is a risky practice. I'll send a fix as soon as possible, because that workaround is no longer needed.

Please consider contributing those improvements back to the community in one (or several) pull requests :)

jpfe-tid commented 3 years ago

@Gallardot #62 fixed a build error introduced at #59.

please use the latest master version if you want to use confluent-kafka-go 1.3.0

please try #63 version instead if you prefer confluent-kafka-go 1.6.1

thanks for using prometheus-kafka-adapter 🙂

Gallardot commented 3 years ago

@jpfe-tid @palmerabollo

Thank you for your help and quick response. I have tested the latest version and there is no problem. I will create a PR for our improvements later. Thanks again.