35 lines
No EOL
1.3 KiB
Docker
35 lines
No EOL
1.3 KiB
Docker
FROM --platform=linux/amd64 gcr.io/kaniko-project/executor:v1.23.2 AS kaniko
|
|
|
|
FROM --platform=linux/amd64 golang:1.23-alpine
|
|
|
|
RUN apk add sudo curl
|
|
# linting
|
|
RUN wget -O- -nv https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s v1.61.0
|
|
|
|
# trivy
|
|
RUN curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b /usr/bin latest
|
|
RUN ls -la /usr/bin
|
|
|
|
# ko
|
|
RUN curl -sSfL https://github.com/ko-build/ko/releases/download/v0.17.1/ko_0.17.1_Linux_x86_64.tar.gz > ko.tgz
|
|
RUN tar xvf ko.tgz
|
|
RUN rm LICENSE README.md
|
|
RUN mv ko /usr/bin
|
|
|
|
# podman
|
|
RUN apk add podman
|
|
|
|
# git
|
|
RUN apk add --no-cache git
|
|
|
|
# add kaniko to this image by re-using binaries and steps from official image
|
|
COPY --from=kaniko /kaniko/executor /kaniko/executor
|
|
COPY --from=kaniko /kaniko/docker-credential-gcr /kaniko/docker-credential-gcr
|
|
COPY --from=kaniko /kaniko/docker-credential-ecr-login /kaniko/docker-credential-ecr-login
|
|
COPY --from=kaniko /kaniko/docker-credential-acr-env /kaniko/docker-credential-acr-env
|
|
COPY --from=kaniko /etc/nsswitch.conf /etc/nsswitch.conf
|
|
COPY --from=kaniko /kaniko/.docker /kaniko/.docker
|
|
|
|
ENV PATH $PATH:/usr/local/bin:/kaniko
|
|
ENV DOCKER_CONFIG /kaniko/.docker/
|
|
ENV DOCKER_CREDENTIAL_GCR_CONFIG /kaniko/.config/gcloud/docker_credential_gcr_config.json |