CKAD — Production Security Best Practices
Putting It All Together
Here is a production-ready Pod spec with all security best practices:
apiVersion: v1
kind: Pod
metadata:
name: secure-app
spec:
serviceAccountName: app-sa
automountServiceAccountToken: false
securityContext:
runAsUser: 1000
runAsGroup: 1000
runAsNonRoot: true
fsGroup: 1000
containers:
- name: app
image: myapp:v1
ports:
- containerPort: 8080
securityContext:
readOnlyRootFilesystem: true
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
resources:
requests:
cpu: 100m
memory: 128Mi
limits:
cpu: 250m
memory: 256Mi
volumeMounts:
- name: tmp
mountPath: /tmp
volumes:
- name: tmp
emptyDir: {}
Next: Hands-On Lab →