kubernetes-deploying — скилл для Claude Code: установка
Скилл помогает описывать и разворачивать приложения в Kubernetes через Deployment, Service, Ingress и связанные ресурсы.
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a claude-codeЧто делает kubernetes-deploying
Скилл подсказывает, как собрать Kubernetes-манифесты для Deployment, Service, Ingress, ConfigMap и Secret. В примерах есть переменные окружения, ограничения ресурсов, HTTP-проверки liveness и readiness, а также подключение секрета к контейнеру.
Он также даёт команды kubectl для применения манифестов, просмотра подов и логов, входа в контейнер, масштабирования, отката и локальной отладки через port-forward. Отдельно описаны Rolling update, Recreate, Blue/green, Canary и Horizontal Pod Autoscaler.
Секреты нельзя хранить в открытом YAML, который коммитится в Git: скилл советует Sealed Secrets, SOPS или внешние менеджеры секретов.
Какие задачи решает
- собрать манифесты Deployment и Service
- настроить Ingress с TLS
- добавить liveness и readiness probes
- масштабировать Deployment вручную или через HPA
- откатить неудачный релиз Kubernetes
Примеры запросов агенту
- Используй скилл
kubernetes-deployingи подготовь манифесты для приложения изk8s/. - Проверь Deployment
my-app, его поды и логи командамиkubectl. - Настрой для
my-appIngress с TLS, readiness-проверку и горизонтальное масштабирование.
Как установить kubernetes-deploying
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a claude-code2Вручную: положить файлы
~/.claude/skills/kubernetes-deploying/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/kubernetes-deploying/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a codex2Вручную: положить файлы
.agents/skills/kubernetes-deploying/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a cursor2Вручную: положить файлы
.cursor/skills/kubernetes-deploying/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install spencerpauly/awesome-cursor-skills kubernetes-deploying2Вручную: положить файлы
.github/skills/kubernetes-deploying/SKILL.md1Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a gemini-cli2Командой платформы
gemini skills install https://github.com/spencerpauly/awesome-cursor-skills --path resources/kubernetes-deployingВручную: положить файлы
.devin/skills/kubernetes-deploying/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о kubernetes-deploying
Как установить kubernetes-deploying в Claude Code?
Выполните npx skills add spencerpauly/awesome-cursor-skills --skill kubernetes-deploying -a claude-code, затем проверьте файл ~/.claude/skills/kubernetes-deploying/SKILL.md.
Что делает kubernetes-deploying?
Скилл помогает создавать и применять Kubernetes-конфигурации для Deployment, Service, Ingress, ConfigMap и Secret. Он также описывает проверки состояния, масштабирование, стратегии релиза и команды kubectl.
Чем отличаются livenessProbe и readinessProbe?
livenessProbe перезапускает под при сбое проверки. readinessProbe убирает под из обслуживания, пока он не готов принимать трафик.
Исходный текст
SKILL.md · CC0-1.0
---
name: kubernetes-deploying
description: Deploy applications to Kubernetes — Deployments, Services, Ingress, ConfigMaps, Secrets, health checks, and scaling.
user-invocable: true
---
# Kubernetes Deploying
Deploy and manage applications on Kubernetes.
## Core Resources
### Deployment
```yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-app
labels:
app: my-app
spec:
replicas: 3
selector:
matchLabels:
app: my-app
template:
metadata:
labels:
app: my-app
spec:
containers:
- name: my-app
image: my-registry/my-app:v1.2.3
ports:
- containerPort: 3000
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 500m
memory: 512Mi
livenessProbe:
httpGet:
path: /healthz
port: 3000
initialDelaySeconds: 10
periodSeconds: 30
readinessProbe:
httpGet:
path: /ready
port: 3000
initialDelaySeconds: 5
periodSeconds: 10
env:
- name: DATABASE_URL
valueFrom:
secretKeyRef:
name: my-app-secrets
key: database-url
- name: NODE_ENV
value: production
```
### Service
```yaml
apiVersion: v1
kind: Service
metadata:
name: my-app
spec:
selector:
app: my-app
ports:
- port: 80
targetPort: 3000
type: ClusterIP
```
### Ingress
```yaml
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: my-app
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
tls:
- hosts:
- app.example.com
secretName: my-app-tls
rules:
- host: app.example.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: my-app
port:
number: 80
```
### ConfigMap & Secret
```yaml
apiVersion: v1
kind: ConfigMap
metadata:
name: my-app-config
data:
LOG_LEVEL: info
FEATURE_FLAGS: '{"darkMode": true}'
---
apiVersion: v1
kind: Secret
metadata:
name: my-app-secrets
type: Opaque
stringData:
database-url: postgresql://user:pass@host:5432/db
api-key: sk-abc123
```
## Common Commands
```bash
# Apply manifests
kubectl apply -f k8s/
# Check deployment status
kubectl rollout status deployment/my-app
# View pods
kubectl get pods -l app=my-app
# View logs
kubectl logs -f deployment/my-app
# Execute into a pod
kubectl exec -it <pod-name> -- /bin/sh
# Scale
kubectl scale deployment/my-app --replicas=5
# Rollback
kubectl rollout undo deployment/my-app
# Port forward for local debugging
kubectl port-forward svc/my-app 3000:80
```
## Deployment Strategies
| Strategy | How | When |
|----------|-----|------|
| Rolling update (default) | Replace pods one at a time | Most deployments |
| Recreate | Kill all old pods, start new ones | When you can't run two versions simultaneously |
| Blue/green | Run two full environments, switch traffic | Need instant rollback |
| Canary | Route small % of traffic to new version | High-risk changes |
Rolling update config:
```yaml
spec:
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 0
```
## Health Checks
Always set both:
- **livenessProbe**: "Is the process healthy?" — restarts the pod if it fails
- **readinessProbe**: "Can it handle traffic?" — removes from service if it fails
Common probe types:
- `httpGet`: Hit an HTTP endpoint (most common)
- `exec`: Run a command in the container
- `tcpSocket`: Check if a port is open
## Horizontal Pod Autoscaler
```yaml
apiVersion: autoscaling/v2
kind: HorizontalPodAutoscaler
metadata:
name: my-app
spec:
scaleTargetRef:
apiVersion: apps/v1
kind: Deployment
name: my-app
minReplicas: 2
maxReplicas: 10
metrics:
- type: Resource
resource:
name: cpu
target:
type: Utilization
averageUtilization: 70
```
## Tips
- Always set resource requests and limits
- Use namespaces to isolate environments (`dev`, `staging`, `prod`)
- Never put secrets in plaintext YAML committed to git — use Sealed Secrets, SOPS, or external secret managers
- Tag images with specific versions, never use `:latest` in production
- Set `PodDisruptionBudget` for high-availability workloads
© spencerpauly · CC0-1.0 · spencerpauly/awesome-cursor-skills