rasa-production needs to have it mounted. You can do the mount with values.yml as I indicated above. You could also create your own docker image that includes the dashbot code but you’d be better off mounting it at runtime.
# Default values for rasa-x.
# This is a YAML-formatted file.
# Declare variables to be passed into your templates.
# rasax specific settings
rasax:
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# name of the Rasa X image to use
name: "rasa/rasa-x" # gcr.io/rasa-platform/rasa-x-ee
# tag refers to the Rasa X image tag (uses `appVersion` by default)
tag: ""
# port on which Rasa X runs
port: 5002
# scheme by which Rasa X is accessible
scheme: http
# passwordSalt Rasa X uses to salt the user passwords
passwordSalt: "passwordSalt"
# token Rasa X accepts as authentication token from other Rasa services
token: "rasaXToken"
# jwtSecret which is used to sign the jwtTokens of the users
jwtSecret: "jwtSecret"
# databaseName Rasa X uses to store data
# (uses the value of global.postgresql.postgresqlDatabase by default)
databaseName: ""
# disableTelemetry permanently disables telemetry
disableTelemetry: false
# Jaeger Sidecar
jaegerSidecar: "false"
# initialUser is the user which is created upon the initial start of Rasa X
initialUser:
# username specifies a name of this user
username: "me"
# password for this user (leave it empty to skip the user creation)
password: "$CrvMe3i&ye3FdfvJR$t4KJ2"
## Enable persistence using Persistent Volume Claims
## ref: http://kubernetes.io/docs/user-guide/persistent-volumes/
##
persistence:
# access Modes of the pvc
accessModes:
- ReadWriteOnce
# size of the Rasa X volume claim
size: 10Gi
# annotations for the Rasa X pvc
annotations: {}
# finalizers for the pvc
finalizers:
- kubernetes.io/pvc-protection
# existingClaim which should be used instead of a new one
existingClaim: ""
# livenessProbe checks whether rasa x needs to be restarted
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# scheme to be used by the `livenessProbe`
scheme: "HTTP"
# readinessProbe checks whether rasa x can receive traffic
readinessProbe:
enabled: true
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
# scheme to be used by the `readinessProbe`
scheme: "HTTP"
# resources which Rasa X is required / allowed to use
resources: {}
# extraEnvs are environment variables which can be added to the Rasa X deployment
extraEnvs: []
# - name: SOME_CUSTOM_ENV_VAR
# value: "custom value"
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# service specifies settings for exposing rasa x to other services
service:
# annotations for the service
annotations: {}
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# hostNetwork controls whether the pod may use the node network namespace
hostNetwork: false
# dnsPolicy specifies Pod's DNS policy
# ref: https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
dnsPolicy: ""
# rasa: Settings common for all Rasa containers
rasa:
# version is the Rasa Open Source version which should be used.
# Used to ensure backward compatibility with older Rasa Open Source versions.
version: "2.8.12" # Please update the default value in the Readme when updating this
# disableTelemetry permanently disables telemetry
disableTelemetry: false
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# add extra arguments to the command in the container
extraArgs: []
# name of the Rasa image to use
name: "rasa/rasa"
# tag refers to the Rasa image tag. If empty `.Values.rasa.version-full` is used.
tag: ""
# port on which Rasa runs
port: 5005
# scheme by which Rasa services are accessible
scheme: http
# token Rasa accepts as authentication token from other Rasa services
token: "rasaToken"
# rabbitQueue it should use to dispatch events to Rasa X
rabbitQueue: "rasa_production_events"
# Optional additional rabbit queues for e.g. connecting to an analytics stack
additionalRabbitQueues: [
]
# additionalChannelCredentials which should be used by Rasa to connect to various
# input channels
additionalChannelCredentials: {}
# rest:
# facebook:
# verify: "rasa-bot"
# secret: "3e34709d01ea89032asdebfe5a74518"
# page-access-token: "EAAbHPa7H9rEBAAuFk4Q3gPKbDedQnx4djJJ1JmQ7CAqO4iJKrQcNT0wtD"
# input channels
additionalEndpoints:
event_broker:
type: dashbot.rasa.rasa
apiKey: HL8BaPzYNMW2A9bkcXl64bxKmAbwwbyinLK2Joos
# Jaeger Sidecar
jaegerSidecar: "false"
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# scheme to be used by the `livenessProbe`
scheme: "HTTP"
# useLoginDatabase will use the Rasa X database to log in and create the database
# for the tracker store. If `false` the tracker store database must have been created
# previously.
useLoginDatabase: true
# lockStoreDatabase is the database in redis which Rasa uses to store the conversation locks
lockStoreDatabase: "1"
# cacheDatabase is the database in redis which Rasa X uses to store cached values
cacheDatabase: "2"
# extraEnvs are environment variables which can be added to the Rasa deployment
extraEnvs: []
# example which sets env variables in each Rasa Open Source service from a separate k8s secret
# - name: "TWILIO_ACCOUNT_SID"
# valueFrom:
# secretKeyRef:
# name: twilio-auth
# key: twilio_account_sid
# - name: TWILIO_AUTH_TOKEN
# valueFrom:
# secretKeyRef:
# name: twilio-auth
# key: twilio_auth_token
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# versions of the Rasa container which are running
versions:
# rasaProduction is the container which serves the production environment
rasaProduction:
# enable the rasa-production deployment
# You can disable the rasa-production deployment in order to use external Rasa OSS deployment instead.
enabled: true
# Define if external Rasa OSS should be used.
external:
# enable external Rasa OSS
enabled: false
# host of external Rasa OSS deployment
host: "http://rasa-bot"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# replicaCount of the Rasa Production container
replicaCount: 1
# serviceName with which the Rasa production deployment is exposed to other containers
serviceName: "rasa-production"
# service specifies settings for exposing rasa production to other services
service:
# annotations for the service
annotations: {}
# modelTag of the model Rasa should pull from the the model server
modelTag: "production"
# trackerDatabase it should use to to store conversation trackers
trackerDatabase: "tracker"
# rasaEnvironment it used to indicate the origin of events published to RabbitMQ (App ID message property)
rasaEnvironment: "production"
# resources which rasaProduction is required / allowed to use
resources: {}
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# rasaWorker is the container which does computational heavy tasks such as training
rasaWorker:
# enable the rasa-worker deployment
# You can disable the rasa-worker deployment in order to use external Rasa OSS deployment instead.
enabled: true
# Define if external Rasa OSS should be used.
external:
# enable external Rasa OSS
enabled: false
# host of external Rasa OSS deployment
host: "http://rasa-worker"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# replicaCount of the Rasa worker container
replicaCount: 1
# serviceName with which the Rasa worker deployment is exposed to other containers
serviceName: "rasa-worker"
# service specifies settings for exposing rasa worker to other services
service:
# annotations for the service
annotations: {}
# modelTag of the model Rasa should pull from the the model server
modelTag: "production"
# trackerDatabase it should use to to store conversation trackers
trackerDatabase: "worker_tracker"
# rasaEnvironment it used to indicate the origin of events published to RabbitMQ (App ID message property)
rasaEnvironment: "worker"
# resources which rasaWorker is required / allowed to use
resources: {}
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# dbMigrationService specifies settings for the database migration service
# The database migration service requires Rasa X >= 0.33.0
dbMigrationService:
# initContainer describes settings related to the init-db container used as a init container for deployments
initContainer:
# image is the Docker image which is used by the init container
image: alpine:3.12.3
# command overrides the default command to run in the init container
command: []
# command overrides the default command to run in the container
command: []
# args overrides the default arguments to run in the container
args: []
# name is the Docker image name which is used by the migration service (uses `rasax.name` by default)
name: "" # gcr.io/rasa-platform/rasa-x-ee
# tag refers to the Rasa X image tag (uses `appVersion` by default)
tag: ""
# ignoreVersionCheck defines if check required minimum Rasa X version that is required to run the service
ignoreVersionCheck: false
# port on which which to run the readiness endpoint
port: 8000
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# resources which the event service is required / allowed to use
resources: {}
# extraEnvs are environment variables which can be added to the dbMigrationService deployment
extraEnvs: []
# - name: SOME_CUSTOM_ENV_VAR
# value: "custom value"
# extraVolumeMounts defines additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# extraVolumes defines additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# service specifies settings for exposing the db migration service to other services
service:
# annotations for the service
annotations: {}
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# scheme to be used by the `livenessProbe`
scheme: "HTTP"
# readinessProbe checks whether rasa x can receive traffic
readinessProbe:
enabled: true
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
# scheme to be used by the `readinessProbe`
scheme: "HTTP"
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# event-service specific settings
eventService:
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# event service just uses the Rasa X image
name: "rasa/rasa-x" # gcr.io/rasa-platform/rasa-x-ee
# tag refers to the Rasa X image tag (uses `appVersion` by default)
tag: ""
# port on which which to run the readiness endpoint
port: 5673
# replicaCount of the event-service container
replicaCount: 1
# databaseName the event service uses to store data
databaseName: "rasa"
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# resources which the event service is required / allowed to use
resources: {}
# extraEnvs are environment variables which can be added to the eventService deployment
extraEnvs: []
# - name: SOME_CUSTOM_ENV_VAR
# value: "custom value"
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# livenessProbe checks whether the event service needs to be restarted
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
scheme: "HTTP"
# readinessProbe checks whether the event service can receive traffic
readinessProbe:
enabled: true
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
scheme: "HTTP"
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# app (custom action server) specific settings
app:
# default is to install action server from image.
install: true
# if install is set to false, the url to the existing action server can be configured by setting existingUrl.
# #existingUrl: http://myactionserver:5055/webhook
#
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# name of the custom action server image to use
name: "aymane258/customactionserver"
# tag refers to the custom action server image tag
tag: "1"
# replicaCount of the custom action server container
replicaCount: 1
# port on which the custom action server runs
port: 5055
# scheme by which custom action server is accessible
scheme: http
# resources which app is required / allowed to use
resources: {}
# Jaeger Sidecar
jaegerSidecar: "false"
# extraEnvs are environment variables which can be added to the app deployment
extraEnvs: []
# - name: DATABASE_URL
# valueFrom:
# secretKeyRef:
# name: app-secret
# key: database_url
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# endpoints specifies the webhook and health check url paths of the action server app
endpoints:
# actionEndpointUrl is the URL which Rasa Open Source calls to execute custom actions
actionEndpointUrl: /webhook
# healthCheckURL is the URL which is used to check the pod health status
healthCheckUrl: /health
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: true
# service specifies settings for exposing app to other services
service:
# annotations for the service
annotations: {}
# livenessProbe checks whether app needs to be restarted
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# scheme to be used by the `livenessProbe`
scheme: "HTTP"
# readinessProbe checks whether app can receive traffic
readinessProbe:
enabled: true
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
# scheme to be used by the `readinessProbe`
scheme: "HTTP"
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# nginx specific settings
nginx:
# enabled should be `true` if you want to use nginx
# if you set false, you will need to set up some other method of routing (VirtualService/Ingress controller)
enabled: true
# subPath defines the subpath used by Rasa X (ROOT_URL), e.g /rasa-x
subPath: ""
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# name of the nginx image to use
name: "nginx"
# tag refers to the nginx image tag (uses `appVersion` by default)
tag: "1.19"
# custom config map containing nginx.conf, ssl.conf.template, rasax.nginx.template
customConfConfigMap: ""
# replicaCount of nginx containers to run
replicaCount: 1
# certificateSecret which nginx uses to mount the certificate files
certificateSecret: ""
# service which is to expose nginx
service:
# annotations for the service
annotations: {}
# type of the service (https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types)
type: LoadBalancer
# loadBalancerSourceRange for AWS deployments (https://kubernetes.io/docs/concepts/services-networking/service/#aws-nlb-support)
loadBalancerSourceRanges: []
# port is the port which the nginx service exposes for HTTP connections
port: 8000
# nodePort can be used with a service of type `NodePort` to expose the service on a certain port of the node (https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)
nodePort: ""
# externalIPs can be used to expose the service to certain IPs (https://kubernetes.io/docs/concepts/services-networking/service/#external-ips)
externalIPs: []
livenessProbe:
enabled: true
# command for the `livenessProbe`
command: []
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# readinessProbe checks whether rasa x can receive traffic
readinessProbe:
enabled: true
# command for the `readinessProbe`
command: []
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# resources which nginx is required / allowed to use
resources: {}
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# Duckling specific settings
duckling:
# override the default command to run in the container
command: []
# override the default arguments to run in the container
args: []
# Enable or disable duckling
enabled: true
# name of the Duckling image to use
name: "rasa/duckling"
# tag refers to the duckling image tag
tag: "0.1.6.3"
# replicaCount of duckling containers to run
replicaCount: 1
# port on which duckling should run
port: 8000
# scheme by which duckling is accessible
scheme: http
extraEnvs: []
# tolerations can be used to control the pod to node assignment
# https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/
tolerations: []
# - key: "nvidia.com/gpu"
# operator: "Exists"
# nodeSelector to specify which node the pods should run on
# https://kubernetes.io/docs/concepts/configuration/assign-pod-node/
nodeSelector: {}
# "beta.kubernetes.io/instance-type": "g3.8xlarge"
# resources which duckling is required / allowed to use
resources: {}
readinessProbe:
enabled: true
# initialProbeDelay for the `readinessProbe`
initialProbeDelay: 10
# scheme to be used by the `readinessProbe`
scheme: "HTTP"
livenessProbe:
enabled: true
# initialProbeDelay for the `livenessProbe`
initialProbeDelay: 10
# scheme to be used by the `livenessProbe`
scheme: "HTTP"
# additional volumeMounts to the main container
extraVolumeMounts: []
# - name: tmpdir
# mountPath: /var/lib/mypath
# additional volumes to the pod
extraVolumes: []
# - name: tmpdir
# emptyDir: {}
# automountServiceAccountToken specifies whether the Kubernetes service account
# credentials should be automatically mounted into the pods. See more about it in
# https://kubernetes.io/docs/tasks/configure-pod-container/configure-service-account/#use-the-default-service-account-to-access-the-api-server
automountServiceAccountToken: false
# service specifies settings for exposing duckling to other services
service:
# annotations for the service
annotations: {}
# podLabels adds additional pod labels
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
podLabels: {}
# rasaSecret object which supplies passwords, tokens, etc. See
# https://rasa.com/docs/rasa-x/openshift-kubernetes/#providing-access-credentials-using-an-external-secret
# to see which values are required in the secret in case you want to provide your own.
# If no secret is provided, a secret will be generated.
rasaSecret: ""
# debugMode enables / disables the debug mode for Rasa and Rasa X
debugMode: false
# separateEventService value determines whether the eventService will be run as a separate service.
# If set to 'false', Rasa X will run an event service as a subprocess (not recommended
# high-load setups).
separateEventService: "true"
# separateDBMigrationService value determines whether the dbMigrationService will be run as a separate service.
# If set to 'false', Rasa X will run a database migration service as a subprocess.
separateDBMigrationService: true
# postgresql specific settings (https://hub.helm.sh/charts/bitnami/postgresql/8.6.13)
postgresql:
# Install should be `true` if the postgres subchart should be used
install: true
# postgresqlPostgresPassword is the password when .Values.global.postgresql.postgresqlUsername does not equal "postgres"
postgresqlPostgresPassword: ""
# existingHost is the host which is used when an external postgresql instance is provided (`install: false`)
existingHost: ""
# existingSecretKey is the key to get the password when an external postgresql instance is provided (`install: false`)
existingSecretKey: ""
# Configure security context for the postgresql init container
# volumePermissions:
## Init container Security Context
# securityContext:
# runAsUser: 0
## Configure security context for the rabbitmq container
# securityContext:
# enabled: true
# fsGroup: 1001
# runAsUser: 1001
# RabbitMQ specific settings (https://hub.helm.sh/charts/bitnami/rabbitmq/6.19.2)
rabbitmq:
# Install should be `true` if the rabbitmq subchart should be used
install: true
# Enabled should be `true` if any version of rabbit is used
enabled: true
# rabbitmq settings of the subchart
rabbitmq:
# username which is used for the authentication
username: "user"
# password which is used for the authentication
password: "password"
# existingPasswordSecret which should be used for the password instead of putting it in the values file
existingPasswordSecret: ""
# service specifies settings for exposing rabbit to other services
service:
# port on which rabbitmq is exposed to Rasa
port: 5672
# existingHost is the host which is used when an external rabbitmq instance is provided (`install: false`)
existingHost: ""
# existingPasswordSecretKey is the key to get the password when an external rabbitmq instance is provided (`install: false`)
existingPasswordSecretKey: ""
# # security context for the rabbitmq container (please see the documentation of the subchart)
# securityContext:
# enabled: true
# fsGroup: 1001
# runAsUser: 1001
# redis specific settings (https://hub.helm.sh/charts/bitnami/redis/10.5.14)
redis:
# Install should be `true` if the redis subchart should be used
install: true
# cluster settings for redis (Rasa does currently not support redis sentinels)
cluster:
# set up a single Redis instance, as `redis-py` does not support clusters (https://github.com/andymccurdy/redis-py#cluster-mode)
enabled: false
# redisPort: port which should be used to expose redis to the other components
redisPort: 6379
# existingSecret which should be used for the password instead of putting it in the values file
existingSecret: ""
# existingSecretPasswordKey is the key to get the password when an external redis instance is provided
existingSecretPasswordKey: ""
# existingHost is the host which is used when an external redis instance is provided (`install: false`)
existingHost: ""
# # security context for the redis container (please see the documentation of the subchart)
# securityContext:
# enabled: true
# fsGroup: 1001
# runAsUser: 1001
# ingress settings
ingress:
# enabled should be `true` if you want to use this ingress.
# Note that if `nginx.enabled` is `true` the `nginx` image is used as reverse proxy.
# In order to use nginx ingress you have to set `nginx.enabled=false`.
enabled: true
# annotations for the ingress - annotations are applied for the rasa and rasax ingresses
annotations: {}
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
# annotationsRasa is extra annotations for the rasa nginx ingress
annotationsRasa: {}
# annotationsRasaX is extra annotations for the rasa x nginx ingress
annotationsRasaX:
nginx.ingress.kubernetes.io/proxy-body-size: "0"
nginx.ingress.kubernetes.io/proxy-read-timeout: "3600"
nginx.ingress.kubernetes.io/proxy-send-timeout: "3600"
# hosts for this ingress
hosts:
- host: rasa-x.example.com
paths:
- /
# tls: Secrets for the certificates
tls: []
# - secretName: rasa-x-tls
# hosts:
# - rasa-x.example.com
networkPolicy:
# Enable creation of NetworkPolicy resources. When set to true, explicit ingress & egress
# network policies will be generated for the required inter-pod connections
enabled: false
# Allow for traffic from a given CIDR - it's required in order to make kubelet able to run live and readiness probes
nodeCIDR: {}
# - ipBlock:
# cidr: 0.0.0.0/0
# images: Settings for the images
images:
# pullPolicy to use when deploying images
pullPolicy: "Always"
# imagePullSecrets which are required to pull images for private registries
imagePullSecrets: []
# securityContext to use
securityContext:
# runAsUser: 1000
fsGroup: 1000
# nameOverride replaces the Chart's name
nameOverride: ""
# fullNameOverride replace the Chart's fullname
fullnameOverride: ""
# global settings of the used subcharts
global:
# specifies the number of seconds you want to wait for your Deployment to progress before
# the system reports back that the Deployment has failed progressing - surfaced as a condition
# with Type=Progressing, Status=False. and Reason=ProgressDeadlineExceeded in the status of the resource
# source: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#progress-deadline-seconds
progressDeadlineSeconds: 600
# storageClass the volume claims should use
storageClass: ""
# postgresql: global settings of the postgresql subchart
postgresql:
# postgresqlUsername which should be used by Rasa to connect to Postgres
postgresqlUsername: "postgres"
# postgresqlPassword is the password which is used when the postgresqlUsername equals "postgres"
postgresqlPassword: "password"
# existingSecret which should be used for the password instead of putting it in the values file
existingSecret: ""
# postgresDatabase which should be used by Rasa X
postgresqlDatabase: "rasa"
# servicePort which is used to expose postgres to the other components
servicePort: 5432
# host: postgresql.hostedsomewhere.else
# redis: global settings of the postgresql subchart
redis:
# password to use in case there no external secret was provided
password: "redis-password"
# additionalDeploymentLabels can be used to map organizational structures onto system objects
# https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/
additionalDeploymentLabels: {}
C:\Users\ayman\OneDrive\Bureaublad\VisualQuran\iChoosr-Rasa-chatbot>kubectl -n rasax logs rasa-x-1638803505-rasa-production-b7784bfd8-n89vr
←(0lqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqk←(B
←(0x←(B Rasa Open Source reports anonymous usage telemetry to help improve the product ←(0x←(B
←(0x←(B for all its users. ←(0x←(B
←(0x←(B ←(0x←(B
←(0x←(B If you'd like to opt-out, you can use `rasa telemetry disable`. ←(0x←(B
←(0x←(B To learn more, check out https://rasa.com/docs/rasa/telemetry/telemetry. ←(0x←(B
←(0mqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqj←(B
←[92mStarting Rasa X in production mode... 🚀←[0m
Traceback (most recent call last):
File "/opt/venv/bin/rasa", line 8, in <module>
sys.exit(main())
File "/opt/venv/lib/python3.8/site-packages/rasa/__main__.py", line 121, in main
cmdline_arguments.func(cmdline_arguments)
File "/opt/venv/lib/python3.8/site-packages/rasa/cli/x.py", line 355, in rasa_x
run_in_production(args)
File "/opt/venv/lib/python3.8/site-packages/rasa/cli/x.py", line 414, in run_in_production
_rasa_service(args, endpoints, None, credentials_path)
File "/opt/venv/lib/python3.8/site-packages/rasa/cli/x.py", line 89, in _rasa_service
serve_application(
File "/opt/venv/lib/python3.8/site-packages/rasa/core/run.py", line 178, in serve_application
app = configure_app(
File "/opt/venv/lib/python3.8/site-packages/rasa/core/run.py", line 103, in configure_app
app = server.create_app(
File "/opt/venv/lib/python3.8/site-packages/rasa/server.py", line 650, in create_app
Initialize(
File "/opt/venv/lib/python3.8/site-packages/sanic_jwt/initialization.py", line 133, in __init__
self.__load_configuration()
File "/opt/venv/lib/python3.8/site-packages/sanic_jwt/initialization.py", line 306, in __load_configuration
self.config = self.configuration_class(self.app.config, **self.kwargs)
File "/opt/venv/lib/python3.8/site-packages/sanic_jwt/configuration.py", line 283, in __init__
self._validate_secret()
File "/opt/venv/lib/python3.8/site-packages/sanic_jwt/configuration.py", line 308, in _validate_secret
if self.secret() is None or (
File "/opt/venv/lib/python3.8/site-packages/sanic_jwt/configuration.py", line 134, in __call__
if asyncio.get_event_loop().is_running():
File "/usr/lib/python3.8/asyncio/events.py", line 639, in get_event_loop
raise RuntimeError('There is no current event loop in thread %r.'
RuntimeError: There is no current event loop in thread 'MainThread'.
Sorry for the confusion but I wasn’t suggesting you replace rabbit with kafka. The example was intended to show how you can configure a different event broker. In your case, you need to replace rabbit with the dashbot broker.
Rasa doesn’t not support multple event brokers. Based on your config, you are using the rabbit broker to send events to Rasa X. You could replace rabbit with the dashbot config but your Rasa X instance will no longer receive the conversations.
Rabbit does allow you to create multiple queues, so it’s possible you could create a second queue that would be forwarded to Dashbot but then you would need to re-write the dashbot.rasa.rasa code to read from the rabbit queue directly. Otherwise you could disconnect Rasa X and just use Dashbot.