Deploy applications to Kubernetes with production-ready manifests.
Supports Deployments, Services, Ingress, HPA, ConfigMaps, Secrets, StatefulSets, and NetworkPolicies.
Includes health checks, resource limits, auto-scaling, and TLS termination. Use when working with creating kubernetes deployments. Trigger with 'creating', 'kubernetes', 'deployments'.
Deploy applications to Kubernetes with production-ready manifests.
Supports Deployments, Services, Ingress, HPA, ConfigMaps, Secrets, StatefulSets, and NetworkPolicies.
Includes health checks, resource limits, auto-scaling, and TLS termination. Use when working with creating kubernetes deployments. Trigger with 'creating', 'kubernetes', 'deployments'.
allowed-tools
Read, Write, Edit, Grep, Glob, Bash(kubectl:*)
version
2.0.0
author
Jeremy Longshore <jeremy@intentsolutions.io>
license
MIT
compatible-with
claude-code, codex, openclaw
tags
["devops","deployment","kubernetes","scaling"]
Creating Kubernetes Deployments
Generate production-ready Kubernetes manifests with health checks, resource limits, and security best practices.
# Blue deployment (current production)apiVersion:apps/v1kind:Deploymentmetadata:name:my-api-bluelabels:app:my-apiversion:bluespec:replicas:3selector:matchLabels:app:my-apiversion:bluetemplate:metadata:labels:app:my-apiversion:bluespec:containers:-name:my-apiimage:my-registry/my-api:v1.0.0---# Service points to blueapiVersion:v1kind:Servicemetadata:name:my-apispec:selector:app:my-apiversion:blue# Switch to 'green' for deploymentports:-port:80targetPort:8080# 8080: HTTP proxy port
resources:requests:# Guaranteed resourcescpu:100m# 0.1 CPU corememory:256Milimits:# Maximum allowedcpu:500m# 0.5 CPU corememory:512Mi
Workload Type
CPU Request
Memory Request
CPU Limit
Memory Limit
Web API
100m-500m
256Mi-512Mi
500m-1000m
512Mi-1Gi
Worker
250m-1000m
512Mi-1Gi
1000m-2000m
1Gi-2Gi
Database
500m-2000m
1Gi-4Gi
2000m-4000m
4Gi-8Gi
Health Checks
Liveness Probe (Is container running?)
livenessProbe:httpGet:path:/healthzport:8080# 8080: HTTP proxy portinitialDelaySeconds:30# Wait for app startupperiodSeconds:10# Check every 10stimeoutSeconds:5# Timeout per checkfailureThreshold:3# Restart after 3 failures
Readiness Probe (Ready for traffic?)
readinessProbe:httpGet:path:/readyzport:8080# 8080: HTTP proxy portinitialDelaySeconds:5# Quick check after startperiodSeconds:5# Check every 5ssuccessThreshold:1# 1 success = readyfailureThreshold:3# Remove from LB after 3 failures
apiVersion:autoscaling/v2kind:HorizontalPodAutoscalermetadata:name:my-api-hpaspec:scaleTargetRef:apiVersion:apps/v1kind:Deploymentname:my-apiminReplicas:2maxReplicas:10metrics:-type:Resourceresource:name:cputarget:type:UtilizationaverageUtilization:70-type:Resourceresource:name:memorytarget:type:UtilizationaverageUtilization:80behavior:scaleDown:stabilizationWindowSeconds:300# 300: Wait 5min before scale down