# # Copyright © 2016-2018 The Thingsboard Authors # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. # --- apiVersion: v1 kind: Service metadata: labels: name: redis-service name: redis-service spec: ports: - name: redis-service protocol: TCP port: 6379 targetPort: 6379 selector: app: redis --- apiVersion: v1 kind: ConfigMap metadata: name: redis-conf data: redis.conf: | appendonly yes protected-mode no bind 0.0.0.0 port 6379 dir /var/lib/redis --- apiVersion: apps/v1beta1 kind: StatefulSet metadata: name: redis spec: serviceName: redis-service replicas: 1 template: metadata: labels: app: redis spec: terminationGracePeriodSeconds: 10 containers: - name: redis image: redis:4.0.9 command: - redis-server args: - /etc/redis/redis.conf resources: requests: cpu: 100m memory: 100Mi ports: - containerPort: 6379 name: redis volumeMounts: - name: redis-data mountPath: /var/lib/redis - name: redis-conf mountPath: /etc/redis volumes: - name: redis-conf configMap: name: redis-conf items: - key: redis.conf path: redis.conf volumeClaimTemplates: - metadata: name: redis-data annotations: volume.beta.kubernetes.io/storage-class: fast spec: accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 1Gi