dockerfile: include a specific yq version that doesn't have issues with control characters when checking the lb config

pull/670/head
iwilltry42 3 years ago
parent a278725078
commit 2e59b45ea9
No known key found for this signature in database
GPG Key ID: 7BA57AD1CFF16110
  1. 29
      Dockerfile

@ -1,16 +1,37 @@
############################################################
# builder #
# -> golang image used solely for building the k3d binary #
# -> built executable can then be copied into other stages #
############################################################
FROM golang:1.16 as builder
ARG GIT_TAG_OVERRIDE
WORKDIR /app
COPY . .
RUN make build -e GIT_TAG_OVERRIDE=${GIT_TAG_OVERRIDE} && bin/k3d version
#######################################################
# dind #
# -> k3d + some tools in a docker-in-docker container #
# -> used e.g. in our CI pipelines for testing #
#######################################################
FROM docker:20.10-dind as dind
RUN apk update && apk add bash curl sudo jq yq git make netcat-openbsd
RUN curl -LO https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl && \
chmod +x ./kubectl && \
mv ./kubectl /usr/local/bin/kubectl
# install some basic packages needed for testing, etc.
RUN apk update && apk add bash curl sudo jq git make netcat-openbsd
# install kubectl to interact with the k3d cluster
RUN curl -L https://storage.googleapis.com/kubernetes-release/release/`curl -s https://storage.googleapis.com/kubernetes-release/release/stable.txt`/bin/linux/amd64/kubectl -o /usr/local/bin/kubectl && \
chmod +x /usr/local/bin/kubectl
# install yq (yaml processor) from source, as the busybox yq had some issues
RUN curl -L https://github.com/mikefarah/yq/releases/download/v4.9.6/yq_linux_amd64 -o /usr/bin/yq &&\
chmod +x /usr/bin/yq
COPY --from=builder /app/bin/k3d /bin/k3d
#########################################
# binary-only #
# -> only the k3d binary.. nothing else #
#########################################
FROM scratch as binary-only
COPY --from=builder /app/bin/k3d /bin/k3d
ENTRYPOINT ["/bin/k3d"]
Loading…
Cancel
Save