* add oci client for registry * add LoadRepoIndexFormOci * feat: Adapt to oci-based helmchart repo * Update the golang base image version in the dockerfile * update oci_test.go Signed-off-by: lingbo <lingbo@lingbohome.com> * fix: Update oci_test.go Signed-off-by: 凌波 <lingbo@lingbohome.com> * Update go imports --------- Signed-off-by: lingbo <lingbo@lingbohome.com> Signed-off-by: 凌波 <lingbo@lingbohome.com> Co-authored-by: hongming <coder.scala@gmail.com>
40 lines
869 B
Docker
40 lines
869 B
Docker
# Download dependencies
|
|
FROM alpine:3.18.3 AS base_os_context
|
|
|
|
ENV OUTDIR=/out
|
|
RUN mkdir -p ${OUTDIR}/usr/local/bin/
|
|
RUN apk add --no-cache ca-certificates curl
|
|
|
|
ARG TARGETARCH
|
|
|
|
ENV ARCH=$TARGETARCH
|
|
|
|
RUN curl -LO https://github.com/kubesphere/telemetry/releases/download/v1.0.0/telemetry_1.0.0_linux_${ARCH}.tar.gz && \
|
|
tar -zxvf telemetry_1.0.0_linux_${ARCH}.tar.gz -C ${OUTDIR}/usr/local/bin/ telemetry
|
|
|
|
# Add KS Core Helm Chart
|
|
COPY config/ks-core ${OUTDIR}/var/helm-charts/ks-core
|
|
|
|
# Build
|
|
FROM golang:1.21.5 AS build_context
|
|
|
|
ENV OUTDIR=/out
|
|
RUN mkdir -p ${OUTDIR}/usr/local/bin/
|
|
|
|
WORKDIR /workspace
|
|
ADD . /workspace/
|
|
|
|
RUN make ks-controller-manager
|
|
RUN mv /workspace/bin/cmd/controller-manager ${OUTDIR}/usr/local/bin/
|
|
|
|
# Final Image
|
|
FROM alpine:3.18.3
|
|
|
|
COPY --from=base_os_context /out/ /
|
|
COPY --from=build_context /out/ /
|
|
|
|
WORKDIR /
|
|
|
|
EXPOSE 8443
|
|
CMD ["sh"]
|