Kafka 를 Docker 로 띄우려고 하다가 Error 가 났다.
사용한 이미지는 wurstmeister 님이 작성해주신 이미지로
pulls 가 50M+ 이나 되고 git start 도 4.1k 나 된다.
그렇다면 내가 잘못한 것이라 생각하여 해결방법을 찾아보았다.
[Quick Start 참고하여 예제 진행 중 docker-compose up -d 명령에서 에러 발생]
Step 11/14 : RUN apk add --no-cache bash curl jq docker && chmod a+x /tmp/*.sh && mv /tmp/start-kafka.sh /tmp/broker-list.sh /tmp/create-topics.sh /tmp/versions.sh /usr/bin && sync && /tmp/download-kafka.sh && tar xfz /tmp/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz -C /opt && rm /tmp/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz && ln -s /opt/kafka_${SCALA_VERSION}-${KAFKA_VERSION} ${KAFKA_HOME} && rm /tmp/* && wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk && apk add --no-cache --allow-untrusted glibc-${GLIBC_VERSION}.apk && rm glibc-${GLIBC_VERSION}.apk
---> Running in 6d19376cffa6
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.9/main/x86_64/APKINDEX.tar.gz: temporary error (try again later)
fetch http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz
WARNING: Ignoring http://dl-cdn.alpinelinux.org/alpine/v3.9/community/x86_64/APKINDEX.tar.gz: temporary error (try again later)
ERROR: unsatisfiable constraints:
bash (missing):
required by: world[bash]
curl (missing):
required by: world[curl]
docker (missing):
required by: world[docker]
jq (missing):
required by: world[jq]
ERROR: Service 'kafka' failed to build: The command '/bin/sh -c apk add --no-cache bash curl jq docker && chmod a+x /tmp/*.sh && mv /tmp/start-kafka.sh /tmp/broker-list.sh /tmp/create-topics.sh /tmp/versions.sh /usr/bin && sync && /tmp/download-kafka.sh && tar xfz /tmp/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz -C /opt && rm /tmp/kafka_${SCALA_VERSION}-${KAFKA_VERSION}.tgz && ln -s /opt/kafka_${SCALA_VERSION}-${KAFKA_VERSION} ${KAFKA_HOME} && rm /tmp/* && wget https://github.com/sgerrand/alpine-pkg-glibc/releases/download/${GLIBC_VERSION}/glibc-${GLIBC_VERSION}.apk && apk add --no-cache --allow-untrusted glibc-${GLIBC_VERSION}.apk && rm glibc-${GLIBC_VERSION}.apk' returned a non-zero co
de: 4
오류의 내용은 build 실패이다.
yml 파일을 살펴보면
kafka 서비스를 실행할 때 build tag 가 . 으로 되어있다.
해당 라인의 의미는 directory 에서 빌드를 진행한다는 내용이였다.
빌드는 될까?
당연히 빌드에서도 에러가 발생했다.
한참 구글링을 하던 중 docker 의 dns 설정이 문제가 있다라는 의견을 보았다.
좀 더 찾다보니 빌드를 할 때 --network 옵션을 사용하라는 의견이 있었다.
$ docker build -t kafka:solar-1.0.0 . --network host
빌드가 잘되는 걸 보니 docker 의 dns 문제가 맞는 듯 하다.
docker-compose.yml 파일에서 해당 이미지로 적용!
build tag 를 지워버리고 image tag 를 작성해서 방금 빌드한 이미지로 변경했다.
해결되었다.
'Error Review' 카테고리의 다른 글
java 버전에러 (java.lang.UnsupportedClassVersionError) (0) | 2021.01.19 |
---|---|
Kafka-Manager (CMAK) compile error ./sbt clean dist (0) | 2020.04.28 |
CentOS 8 Jupyter Notebook Error Python 3.7 (No module named '_sqlite3', 'pysqlite2') (0) | 2020.03.19 |
HTTP 401 Error Code (0) | 2019.12.14 |
HTTP 503 Error Code (2) | 2019.12.12 |
최근댓글