# syntax=docker/dockerfile:1 FROM golang:1.24.2 AS build WORKDIR /go/src/middleman COPY . . ARG VERSION=dev # echo -n "not tied to a commit" | sha1sum ARG COMMIT=dbf242029aeedcfe71af2e5843474d8f8e2e9d63 RUN go build -ldflags="-s -w -B gobuildid -X main.version=$VERSION -X main.commit=$COMMIT -linkmode external -extldflags -static" -buildmode=pie -trimpath -o middleman cmd/middleman/main.go FROM scratch COPY --from=build /etc/group /etc/group COPY --from=build /etc/passwd /etc/passwd WORKDIR / COPY --from=build /go/src/middleman/middleman . EXPOSE 2375/tcp USER nobody:nogroup HEALTHCHECK --interval=5s --timeout=2s CMD ["/middleman", "healthcheck"] ENTRYPOINT ["/middleman"] CMD ["serve"]