apiVersion: apps/v1 kind: Deployment metadata: name: redis namespace: edu-master labels: app: edu-master-redis spec: replicas: 1 selector: matchLabels: app: edu-master-redis template: metadata: labels: app: edu-master-redis spec: containers: - name: redis image: redis:alpine imagePullPolicy: IfNotPresent ports: - containerPort: 6379 volumeMounts: - name: redis-data mountPath: /data resources: requests: cpu: 25m memory: 64Mi limits: cpu: 250m memory: 256Mi readinessProbe: exec: command: ["redis-cli", "ping"] initialDelaySeconds: 5 periodSeconds: 5 timeoutSeconds: 3 livenessProbe: exec: command: ["redis-cli", "ping"] initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 3 volumes: - name: redis-data persistentVolumeClaim: claimName: redis-data-pvc --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: redis-data-pvc namespace: edu-master spec: accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- apiVersion: v1 kind: Service metadata: name: redis namespace: edu-master spec: selector: app: edu-master-redis ports: - name: redis port: 6379 targetPort: 6379