diff --git a/Dockerfile b/Dockerfile index 35cbf379..a87f1a6f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,50 +6,22 @@ ARG BCI_MICRO=registry.suse.com/bci/bci-micro ARG BCI_GO=registry.suse.com/bci/golang ARG GO_VERSION=1.18 -ARG GORELEASER_XX_VERSION=1.2.5 -FROM registry.suse.com/bci/golang:1.18 -FROM crazymax/goreleaser-xx:1.2.5 AS goreleaser-xx #FROM $BCI_GO:$GO_VERSION AS base FROM registry.suse.com/bci/golang:1.18 AS base -COPY --from=goreleaser-xx / / -#RUN zypper --non-interactive install -y file git-core WORKDIR /src FROM base AS build ENV GO111MODULE=auto -ENV CGO_ENABLED=0 -# GIT_REF is used by goreleaser-xx to handle the proper git ref when available. -# It will fallback to the working tree info if empty and use "git tag --points-at" -# or "git describe" to define the version info. -ARG GIT_REF -ARG TARGETPLATFORM -ARG PKG="github.com/distribution/distribution/v3" -ARG BUILDTAGS="include_oss include_gcs" -RUN --mount=type=bind,target=/src,rw \ +ENV CGO_ENABLED=1 +RUN --mount=type=bind,target=/src \ --mount=type=cache,target=/root/.cache/go-build \ --mount=type=cache,target=/go/pkg/mod \ - goreleaser-xx --debug \ - --name="registry" \ - --dist="/out" \ - --main="./cmd/registry" \ - --flags="-v" \ - --ldflags="-s -w -X '$PKG/version.Version={{.Version}}' -X '$PKG/version.Revision={{.Commit}}' -X '$PKG/version.Package=$PKG'" \ - --tags="$BUILDTAGS" \ - --files="LICENSE" \ - --files="README.md" + go build -o /go/bin/registry ./cmd/registry -FROM scratch AS artifact -COPY --from=build /out/*.tar.gz / -COPY --from=build /out/*.zip / -COPY --from=build /out/*.sha256 / - -FROM scratch AS binary -COPY --from=build /usr/local/bin/registry* / - -FROM bci/bci-micro +FROM registry.suse.com/bci/bci-micro COPY cmd/registry/config-dev.yml /etc/docker/registry/config.yml -COPY --from=build /usr/local/bin/registry /bin/registry +COPY --from=build /go/bin/registry /bin/registry VOLUME ["/var/lib/registry"] EXPOSE 5000 ENTRYPOINT ["registry"]