volcano.sh/volcano@v1.9.0/installer/dockerfile/webhook-manager/Dockerfile (about) 1 # Copyright 2019 The Volcano Authors. 2 # 3 # Licensed under the Apache License, Version 2.0 (the "License"); 4 # you may not use this file except in compliance with the License. 5 # You may obtain a copy of the License at 6 # 7 # http://www.apache.org/licenses/LICENSE-2.0 8 # 9 # Unless required by applicable law or agreed to in writing, software 10 # distributed under the License is distributed on an "AS IS" BASIS, 11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12 # See the License for the specific language governing permissions and 13 # limitations under the License. 14 15 FROM golang:1.21.8 AS builder 16 WORKDIR /go/src/volcano.sh/ 17 COPY go.mod go.sum ./ 18 RUN go mod download 19 ADD . volcano 20 RUN cd volcano && make vc-webhook-manager 21 22 FROM alpine:latest 23 ARG KUBE_VERSION="1.29.0" 24 ARG TARGETARCH 25 ARG APK_MIRROR 26 RUN if [[ -n "$APK_MIRROR" ]]; then sed -i "s@https://dl-cdn.alpinelinux.org@${APK_MIRROR}@g" /etc/apk/repositories ; fi && \ 27 apk add --update ca-certificates && \ 28 apk add --update openssl && \ 29 apk add --update -t deps curl && \ 30 curl -L https://storage.googleapis.com/kubernetes-release/release/v$KUBE_VERSION/bin/linux/$TARGETARCH/kubectl -o /usr/local/bin/kubectl && \ 31 chmod +x /usr/local/bin/kubectl && \ 32 apk del --purge deps && \ 33 rm /var/cache/apk/* 34 35 COPY --from=builder /go/src/volcano.sh/volcano/_output/bin/vc-webhook-manager /vc-webhook-manager 36 ADD ./installer/dockerfile/webhook-manager/gen-admission-secret.sh /gen-admission-secret.sh 37 ENTRYPOINT ["/vc-webhook-manager"]