Skip to content

feat(devex): Docker image for the gRPC server #21

@EngineerProjects

Description

@EngineerProjects

Summary

Provide an official Docker image for the Nexus gRPC server so users can
deploy it without installing Go.

Deliverables

  • Dockerfile — multi-stage build (build stage: Go, runtime stage: distroless)
  • docker-compose.yml — local dev setup with env vars pre-wired
  • GitHub Actions job added to release.yml — builds and pushes image to
    ghcr.io/engineerprojects/nexus-engine on every v* tag

Dockerfile sketch

FROM golang:1.25 AS builder
WORKDIR /src
COPY . .
RUN CGO_ENABLED=0 go build -trimpath -ldflags="-s -w" -o /nexus-grpc ./cmd/grpc

FROM gcr.io/distroless/static-debian12
COPY --from=builder /nexus-grpc /nexus-grpc
EXPOSE 50051
ENTRYPOINT ["/nexus-grpc"]

Acceptance criteria

  • docker build . produces a working image
  • docker run -e ANTHROPIC_API_KEY=... -p 50051:50051 nexus-engine starts the server
  • Image size < 30 MB
  • docker-compose up starts server + a simple health-check service
  • CI publishes image to GHCR on tag push
  • docs/transports.md updated with Docker deployment instructions

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions