middleman/Dockerfile
2025-04-30 22:40:03 +02:00

34 lines
710 B
Docker

# 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"]