FROM golang:1.25-alpine AS build WORKDIR /src COPY go.mod go.sum* ./ RUN go mod download COPY . . RUN CGO_ENABLED=0 go build -o /out/server ./cmd/server FROM alpine:3.20 RUN apk add --no-cache ca-certificates \ && addgroup -S app && adduser -S -G app app WORKDIR /app COPY --from=build --chown=app:app /out/server ./server COPY --chown=app:app migrations ./migrations USER app EXPOSE 3000 ENTRYPOINT ["./server"]