# kubernetes-manifest-generator > Generate Kubernetes manifests for deployments, services, ingress, and config maps - Author: Ricardo Ruiz - Repository: ruizrica/anthropic-cookbook - Version: 20251118214353 - Stars: 0 - Forks: 0 - Last Updated: 2026-02-08 - Source: https://github.com/ruizrica/anthropic-cookbook - Web: https://mule.run/skillshub/@@ruizrica/anthropic-cookbook~kubernetes-manifest-generator:20251118214353 --- --- name: kubernetes-manifest-generator description: Generate Kubernetes manifests for deployments, services, ingress, and config maps --- # Kubernetes Manifest Generator ## Deployment ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: myapp labels: app: myapp spec: replicas: 3 selector: matchLabels: app: myapp template: metadata: labels: app: myapp spec: containers: - name: myapp image: myapp:1.0.0 ports: - containerPort: 3000 env: - name: NODE_ENV value: "production" - name: DATABASE_URL valueFrom: secretKeyRef: name: app-secrets key: database-url resources: requests: memory: "128Mi" cpu: "100m" limits: memory: "256Mi" cpu: "200m" livenessProbe: httpGet: path: /health port: 3000 initialDelaySeconds: 30 periodSeconds: 10 readinessProbe: httpGet: path: /ready port: 3000 initialDelaySeconds: 5 periodSeconds: 5 ``` ## Service ```yaml apiVersion: v1 kind: Service metadata: name: myapp-service spec: selector: app: myapp type: LoadBalancer ports: - protocol: TCP port: 80 targetPort: 3000 ``` ## Ingress ```yaml apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: myapp-ingress annotations: cert-manager.io/cluster-issuer: "letsencrypt-prod" spec: tls: - hosts: - app.example.com secretName: myapp-tls rules: - host: app.example.com http: paths: - path: / pathType: Prefix backend: service: name: myapp-service port: number: 80 ``` ## ConfigMap ```yaml apiVersion: v1 kind: ConfigMap metadata: name: app-config data: app.properties: | log_level=info feature_flags=true nginx.conf: | server { listen 80; location / { proxy_pass http://backend; } } ``` ## Secret ```yaml apiVersion: v1 kind: Secret metadata: name: app-secrets type: Opaque data: database-url: cG9zdGdyZXM6Ly8uLi4= # base64 encoded api-key: YWJjMTIz # base64 encoded ``` ## HorizontalPodAutoscaler ```yaml apiVersion: autoscaling/v2 kind: HorizontalPodAutoscaler metadata: name: myapp-hpa spec: scaleTargetRef: apiVersion: apps/v1 kind: Deployment name: myapp minReplicas: 2 maxReplicas: 10 metrics: - type: Resource resource: name: cpu target: type: Utilization averageUtilization: 70 ```