FROM golang:1.25-alpine AS build RUN apk add --no-cache nodejs npm make WORKDIR /src COPY go.mod go.sum ./ RUN go mod download COPY package.json package-lock.json ./ RUN npm ci COPY . . RUN make build FROM alpine:3 RUN adduser -D -u 65532 nonroot COPY --from=build /src/bin/heatguard /heatguard EXPOSE 8080 USER nonroot:nonroot ENTRYPOINT ["/heatguard"]