apiVersion: v1 kind: Namespace metadata: name: tools --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: redisinsight-data namespace: tools labels: app: redisinsight spec: accessModes: - ReadWriteOnce resources: requests: storage: 2Gi # storageClassName: default # uncomment and set if your cluster requires an explicit storage class --- apiVersion: apps/v1 kind: Deployment metadata: name: redisinsight namespace: tools labels: app: redisinsight spec: replicas: 1 selector: matchLabels: app: redisinsight template: metadata: labels: app: redisinsight spec: securityContext: fsGroup: 1001 containers: - name: redisinsight image: redis/redisinsight:2.54.0 imagePullPolicy: IfNotPresent ports: - name: http containerPort: 5540 resources: requests: cpu: "200m" memory: "256Mi" limits: cpu: "500m" memory: "512Mi" securityContext: runAsNonRoot: true runAsUser: 1001 runAsGroup: 1001 readOnlyRootFilesystem: false volumeMounts: - name: data mountPath: /data readinessProbe: httpGet: path: / port: http initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 2 livenessProbe: httpGet: path: / port: http initialDelaySeconds: 30 periodSeconds: 20 timeoutSeconds: 2 volumes: - name: data persistentVolumeClaim: claimName: redisinsight-data --- apiVersion: v1 kind: Service metadata: name: redisinsight namespace: tools labels: app: redisinsight spec: type: ClusterIP selector: app: redisinsight ports: - name: http port: 5540 targetPort: http