FROM golang:1.23-alpine AS builder WORKDIR /src COPY go.mod go.sum ./ COPY api/go.mod api/go.sum ./api/ RUN GOWORK=off go mod download COPY . . RUN GOWORK=off CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /out/server ./services/activity-service/cmd/server RUN GOWORK=off CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o /out/grpc-health-probe ./cmd/grpc-health-probe FROM alpine:3.20 WORKDIR /app RUN apk add --no-cache ca-certificates && adduser -D -g '' appuser COPY --from=builder /out/server /app/server COPY --from=builder /out/grpc-health-probe /app/grpc-health-probe COPY services/activity-service/configs/config.docker.yaml /app/config.yaml USER appuser EXPOSE 13006 ENTRYPOINT ["/app/server"] CMD ["-config", "/app/config.yaml"]