Skip to content
Kubernetes

Deployment & Rollout

Manage a replicated, rolling-updated workload.

#deployment#rollout#replica

Code

kubernetes
# deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: api
spec:
  replicas: 3
  strategy:
    type: RollingUpdate
    rollingUpdate:
      maxSurge: 1
      maxUnavailable: 0
  selector:
    matchLabels: { app: api }
  template:
    metadata:
      labels: { app: api }
    spec:
      containers:
        - name: api
          image: myapp:2.0
          ports: [{ containerPort: 8080 }]

# Rollout commands
# kubectl rollout status deployment/api
# kubectl rollout undo deployment/api
# kubectl rollout history deployment/api