11# ---------------------------------------------------------------------
2- # STAGE 1: Build skopeo and ecr-credentials-helper inside a temporary container
2+ # STAGE 1: Build skopeo inside a temporary container
33# ---------------------------------------------------------------------
44FROM fedora:32 AS skopeo-build
55
66RUN dnf install -y golang git make
77RUN dnf install -y go-md2man gpgme-devel libassuan-devel btrfs-progs-devel device-mapper-devel
8- RUN git clone --depth 1 -b 'v1.4 .1' https://github.com/containers/skopeo $GOPATH/src/github.com/containers/skopeo
8+ RUN git clone --depth 1 -b 'v1.5 .1' https://github.com/containers/skopeo $GOPATH/src/github.com/containers/skopeo
99RUN cd $GOPATH/src/github.com/containers/skopeo \
1010 && make bin/skopeo DISABLE_CGO=1 \
1111 && make install
1212
13+ # ---------------------------------------------------------------------
14+ # STAGE 2: Build credential helpers inside a temporary container
15+ # ---------------------------------------------------------------------
16+ FROM golang:1.17 AS cred-helpers-build
17+
1318RUN go get -u github.com/awslabs/amazon-ecr-credential-helper/ecr-login/cli/docker-credential-ecr-login
14- RUN cp $HOME/go/bin/docker-credential-ecr-login /usr/local/bin/ docker-credential-ecr-login
19+ RUN go get -u github.com/chrismellard/ docker-credential-acr-env
1520
1621# ---------------------------------------------------------------------
17- # STAGE 2 : Build the kubernetes-monitor
22+ # STAGE 3 : Build the kubernetes-monitor
1823# ---------------------------------------------------------------------
1924FROM registry.access.redhat.com/ubi8/ubi:8.5
2025
@@ -31,7 +36,7 @@ ENV NODE_ENV production
3136RUN curl -sL https://rpm.nodesource.com/setup_16.x | bash -
3237RUN yum install -y nodejs
3338
34- RUN curl -L -o /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.2 /dumb-init_1.2.2_amd64
39+ RUN curl -L -o /usr/bin/dumb-init https://github.com/Yelp/dumb-init/releases/download/v1.2.5 /dumb-init_1.2.5_x86_64
3540RUN chmod 755 /usr/bin/dumb-init
3641
3742RUN groupadd -g 10001 snyk
@@ -43,10 +48,13 @@ RUN bash /install.sh --disable-prompts --install-dir=/ && rm /google-cloud-sdk/b
4348ENV PATH=/google-cloud-sdk/bin:$PATH
4449RUN rm /install.sh
4550
51+ # Copy credential helpers
52+ COPY --chown=snyk:snyk --from=cred-helpers-build /go/bin/docker-credential-ecr-login /usr/bin/docker-credential-ecr-login
53+ COPY --chown=snyk:snyk --from=cred-helpers-build /go/bin/docker-credential-acr-env /usr/bin/docker-credential-acr-env
54+
4655WORKDIR /srv/app
4756
4857COPY --chown=snyk:snyk --from=skopeo-build /usr/local/bin/skopeo /usr/bin/skopeo
49- COPY --chown=snyk:snyk --from=skopeo-build /usr/local/bin/docker-credential-ecr-login /usr/bin/docker-credential-ecr-login
5058COPY --chown=snyk:snyk --from=skopeo-build /etc/containers/registries.d/default.yaml /etc/containers/registries.d/default.yaml
5159COPY --chown=snyk:snyk --from=skopeo-build /etc/containers/policy.json /etc/containers/policy.json
5260
0 commit comments