Files
unbound-site/k8s/deploy.yaml
T
argoyle 4c6118116b fix(k8s): update labels and selectors for consistency
Change label keys from "app" to "app.kubernetes.io/name"  
to standardize the label format across the deployment,  
service, and pod specifications. This improves clarity and  
ensures alignment with Kubernetes best practices for  
labeling and facilitates better management and  
selection of resources.
2025-01-24 14:59:58 +01:00

73 lines
1.6 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: unbound-site
labels:
app.kubernetes.io/name: unbound-site
annotations:
kubernetes.io/change-cause: "${TIMESTAMP} Deployed commit id: ${COMMIT}"
spec:
replicas: 2
strategy:
type: RollingUpdate
rollingUpdate:
maxSurge: 1
maxUnavailable: 1
minReadySeconds: 30
selector:
matchLabels:
app.kubernetes.io/name: unbound-site
template:
metadata:
labels:
app.kubernetes.io/name: unbound-site
spec:
affinity:
podAntiAffinity:
preferredDuringSchedulingIgnoredDuringExecution:
- weight: 100
podAffinityTerm:
labelSelector:
matchExpressions:
- key: "app.kubernetes.io/name"
operator: In
values:
- unbound-site
topologyKey: kubernetes.io/hostname
containers:
- name: unbound-site
readinessProbe:
httpGet:
path: /health
port: 80
initialDelaySeconds: 5
periodSeconds: 5
timeoutSeconds: 5
imagePullPolicy: Always
image: registry.gitlab.com/unboundsoftware/unbound-site:${COMMIT}
ports:
- containerPort: 80
resources:
requests:
cpu: 5m
memory: 5Mi
limits:
cpu: 300m
memory: 300Mi
---
apiVersion: v1
kind: Service
metadata:
name: unbound-site
labels:
app.kubernetes.io/name: unbound-site
spec:
type: NodePort
selector:
app.kubernetes.io/name: unbound-site
ports:
- port: 80
targetPort: 80