Skip to content

Add Kubernetes deployment templates #33

Description

@PAMulligan

Description

Add Kubernetes deployment manifests as a deployment option for enterprise and self-hosted environments. This complements the existing Docker support with production-grade orchestration templates.

Why

Enterprise teams deploying to EKS, GKE, or AKS need Kubernetes manifests. The existing Dockerfile provides the container — Kubernetes templates provide the orchestration layer (scaling, health checks, resource limits, ingress).

Acceptance Criteria

  • Create `templates/kubernetes/` directory with:
    • `deployment.yaml` — Pod spec with health probes, resource limits, env vars from secrets
    • `service.yaml` — ClusterIP service
    • `ingress.yaml` — Ingress with TLS (nginx-ingress compatible)
    • `configmap.yaml` — Non-sensitive configuration
    • `secret.yaml` — Template for database credentials (with instructions)
    • `hpa.yaml` — Horizontal Pod Autoscaler
  • Include proper health check probes (liveness and readiness on `/health`)
  • Add resource requests/limits based on typical API workloads
  • Add `--kubernetes` flag to `setup-project.sh` that copies these manifests
  • Create a `kustomize/` overlay structure for staging/production
  • Document how to deploy with `kubectl apply` and `kustomize`
  • CI passes

Notes

This builds on the existing Docker templates. The Dockerfile remains the same — Kubernetes manifests orchestrate the container.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions