# Build context is the repo root (not this directory) — device-control-service # depends on the sibling proto/ Go module via a relative `replace` directive. FROM golang:1.25-alpine AS build WORKDIR /src COPY proto/ ./proto/ COPY services/device-control-service/ ./services/device-control-service/ WORKDIR /src/services/device-control-service RUN go mod download RUN CGO_ENABLED=0 go build -o /out/device-control-service ./cmd/device-control-service FROM alpine:3.20 RUN adduser -D -u 10001 app COPY --from=build /out/device-control-service /usr/local/bin/device-control-service USER app ENTRYPOINT ["/usr/local/bin/device-control-service"]