Files
infra-prod/deploy/redis/redis-sentinel-deploy.yaml
2025-03-30 14:28:40 +02:00

48 lines
1.3 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-sentinel
namespace: redis
labels:
app: redis-sentinel
spec:
replicas: 3
selector:
matchLabels:
app: redis-sentinel
template:
metadata:
labels:
app: redis-sentinel
spec:
# Init container to copy the sentinel.conf from the ConfigMap to a writable emptyDir volume.
initContainers:
- name: copy-sentinel-config
image: busybox
command: ['sh', '-c', 'cp /config/sentinel.conf /writable/']
volumeMounts:
- name: sentinel-config-readonly
mountPath: /config
- name: sentinel-config
mountPath: /writable
containers:
- name: redis-sentinel
image: redis:6.2-alpine
ports:
- containerPort: 26379
name: sentinel
command:
- "redis-sentinel"
- "/etc/redis/sentinel.conf"
volumeMounts:
- name: sentinel-config
mountPath: /etc/redis # this volume is now writable
volumes:
# Mount the ConfigMap as a read-only volume for the init container
- name: sentinel-config-readonly
configMap:
name: redis-sentinel-config
# EmptyDir volume to hold the writable config file
- name: sentinel-config
emptyDir: {}