github.com/caos/orbos@v1.5.14-0.20221103111702-e6cd0cea7ad4/build/orbos/Dockerfile (about) 1 FROM golang:1.16-alpine3.14 as build 2 3 RUN apk update && \ 4 apk add -U --no-cache ca-certificates git curl openssh build-base && \ 5 go get github.com/go-delve/delve/cmd/dlv 6 7 # Runtime dependencies 8 RUN mkdir /dependencies && \ 9 curl -L "https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv3.4.0/kustomize_v3.4.0_linux_amd64.tar.gz" |tar xvz && \ 10 mv ./kustomize /dependencies/kustomize && \ 11 curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.17.0/bin/linux/amd64/kubectl && \ 12 chmod +x ./kubectl && \ 13 mv ./kubectl /dependencies/kubectl && \ 14 curl -L "https://get.helm.sh/helm-v2.17.0-linux-amd64.tar.gz" |tar xvz && \ 15 mv linux-amd64/helm /dependencies/helm && \ 16 chmod +x /dependencies/helm 17 18 COPY artifacts/orbctl-Linux-x86_64 /orbctl 19 COPY artifacts/gen-charts /gen-charts 20 21 RUN cp /dependencies/helm /usr/local/bin/helm 22 RUN mkdir -p /boom 23 RUN /gen-charts -basepath "/boom" 24 25 COPY dashboards /boom/dashboards 26 27 ENV PATH="/dependencies:${PATH}" 28 29 ENTRYPOINT [ "dlv", "exec", "/orbctl", "--api-version", "2", "--headless", "--listen", "127.0.0.1:2345", "--" ] 30 31 FROM alpine:3.13.1 as prod 32 33 RUN apk update && \ 34 addgroup -S -g 1000 orbiter && \ 35 adduser -S -u 1000 orbiter -G orbiter 36 37 ENV GODEBUG madvdontneed=1 38 39 COPY --from=build /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ 40 COPY --from=build --chown=1000:1000 /orbctl /orbctl 41 COPY --from=build --chown=1000:1000 /boom /boom 42 COPY --from=build --chown=1000:1000 /dependencies /usr/local/bin/ 43 44 USER orbiter 45 46 ENTRYPOINT [ "/orbctl" ] 47 CMD [ "--help" ]