## Rocket Chat image version ## ref: https://hub.docker.com/r/rocketchat/rocket.chat/tags ## image: ## NOTE: for microsservices, those two itens get ignored, ## for now. repository: rs1977rs/rocketchat tag: arm64-4.3.3 pullPolicy: IfNotPresent imagePullSecrets: [] ## Host for the application ## set it to a domain pointing to your loadbalancer # host: replicaCount: 1 minAvailable: 1 smtp: enabled: false username: password: host: port: 587 # Extra env vars for Rocket.Chat: extraEnv: # - name: MONGO_OPTIONS # value: '{"ssl": "true"}' # - name: MONGO_OPLOG_URL # value: mongodb://oploguser:password@rocket-1:27017/local&replicaSet=rs0 ## Specifies a Registration Token (obtainable at https://cloud.rocket.chat) #registrationToken: "" ## Specifies an Enterprise License # license: "" ## Pod anti-affinity can prevent the scheduler from placing RocketChat replicas on the same node. ## The default value "soft" means that the scheduler should *prefer* to not schedule two replica pods onto the same node but no guarantee is provided. ## The value "hard" means that the scheduler is *required* to not schedule two replica pods onto the same node. ## The value "" will disable pod anti-affinity so that no anti-affinity rules will be configured. ## podAntiAffinity: '' ## If anti-affinity is enabled sets the topologyKey to use for anti-affinity. ## This can be changed to, for example, failure-domain.beta.kubernetes.io/zone ## podAntiAffinityTopologyKey: kubernetes.io/hostname ## Assign custom affinity rules to the RocketChat instance ## ref: https://kubernetes.io/docs/concepts/configuration/assign-pod-node/ ## affinity: {} # nodeAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # nodeSelectorTerms: # - matchExpressions: # - key: kubernetes.io/e2e-az-name # operator: In # values: # - e2e-az1 # - e2e-az2 # mongodb://user:password@localhost:27017/local?replicaSet=rs0&authSource=admin ## ## MongoDB chart configuration ### ref https://github.com/helm/charts/tree/master/stable/mongodb#configuration ## mongodb: ## Enable or disable MongoDB dependency completely. enabled: true auth: rootPassword: blablabla username: rocketchat password: blablabla database: rocketchat architecture: replicaset replicaCount: 1 arbiter: enabled: false pdb: minAvailable: 0 pdb: minAvailable: 0 # key: persistence: enabled: false ## mongodb data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## # storageClass: "-" accessMode: ReadWriteOnce size: 8Gi volumePermissions: {enabled: true} ## Enable persistence using Persistent Volume Claims ## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/ ## persistence: enabled: true existingClaim: rocketchat-nfs ## rocketchat data Persistent Volume Storage Class ## If defined, storageClassName: ## If set to "-", storageClassName: "", which disables dynamic provisioning ## If undefined (the default) or set to null, no storageClassName spec is ## set, choosing the default provisioner. (gp2 on AWS, standard on ## GKE, AWS & OpenStack) ## # storageClass: "-" accessMode: ReadWriteOnce size: 8Gi ## Configure resource requests and limits ## ref: http://kubernetes.io/docs/user-guide/compute-resources/ ## # resources: # requests: # memory: 512Mi # cpu: 300m securityContext: enabled: true runAsUser: 999 fsGroup: 999 serviceAccount: # Specifies whether a ServiceAccount should be created create: true # The name of the ServiceAccount to use. # If not set and create is true, a name is generated using the fullname template name: ## Configure the ingress object to hook into existing infastructure ### ref : http://kubernetes.io/docs/user-guide/ingress/ ### ingress: enabled: false pathType: Prefix annotations: {} # ingressClassName: "nxinx" annotations: {} # kubernetes.io/ingress.class: "nginx" path: / tls: {} # - secretName: chart-example-tls # hosts: # - chart-example.local service: annotations: {} # service.beta.kubernetes.io/aws-load-balancer-internal: "0.0.0.0/0" labels: {} # key: value ## ServiceType ## ref: https://kubernetes.io/docs/user-guide/services/#publishing-services---service-types type: ClusterIP ## Optional static port assignment for service type NodePort. # nodePort: 30000 port: 80 ## Optional custom labels for the deployment resource. deploymentLabels: {} ## Optional Pod Labels. podLabels: {} ## Optional Pod Annotations. podAnnotations: {} # prometheus.io/port: "9458" # prometheus.io/path: "/metrics" # prometheus.io/scrape: "true" ## Optional Prometheus scraping Settings prometheusScraping: enabled: true port: 9458 ## Liveness and readiness probe values ## Ref: https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#container-probes ## livenessProbe: enabled: true initialDelaySeconds: 60 periodSeconds: 15 timeoutSeconds: 5 failureThreshold: 3 successThreshold: 1 readinessProbe: enabled: true initialDelaySeconds: 10 periodSeconds: 15 timeoutSeconds: 5 failureThreshold: 3 successThreshold: 1 # # # # # # # # # # # # # # # # # # M I C R O S E R V I C E S # # Only available to E.E users # # # # # # # # # # # # # # # # # # ## Deploy as microservices? # Monolithic architecture, by default microservices: enabled: false ## Parameters for each deployment: presence: replicas: 1 ddpStreamer: replicas: 1 streamHub: replicas: 1 accounts: replicas: 1 authorization: replicas: 1 nats: replicas: 1 ## Parameters for each Kubernetes service # NOTE: reserved for future usage still presenceService: ddpStreamerService: natsService: streamHubService: accountsService: authorizationService: natsService: