I have been able to successfully deploy rasa x with kubernetes. I still have one issue to fix I created a custom input channel and I specified it in my credentials.yml file as custom.RestInput so It works locally. But when deploying, how do I add that in the values.yml under the additionalChannelCredential Thanks
Hi @wisdom_kwarteng, have you seen this section of the docs where it talks about configuring rasa open source channels? Kubernetes / OpenShift
Yes @erohmensing My issue was adding my own custom input channel but I found a way yesterday to fix it Thanks
What I did was I extended the rasa image and added my custom input channel and so in the values.yml for the kubenertes I added like this additionalChannelCredentials: custom.RestInput::
Hello wisdom! Can you post our values.yml?
# rasax specific settings
rasax:
# initialUser is the user which is created upon the initial start of Rasa X
initialUser:
# username: "admin"
# password for the Rasa X user
password: "password"
# passwordSalt Rasa X uses to salt the user passwords
passwordSalt: "passwordSalt"
# token Rasa X accepts as authentication token from other Rasa services
token: "token=="
# jwtSecret which is used to sign the jwtTokens of the users
jwtSecret: "sec=="
tag: "0.28.3"
# rasa: Settings common for all Rasa containers
rasa:
# token Rasa accepts as authentication token from other Rasa services
name: "extended rasa image name"
token: "token=="
tag: "latest"
# additionalChannelCredentials which should be used by Rasa to connect to various
# input channels
additionalChannelCredentials:
custom.RestInput:
# RabbitMQ specific settings
rabbitmq:
# rabbitmq settings of the subchart
rabbitmq:
# password which is used for the authentication
password: "password=="
# global settings of the used subcharts
global:
# postgresql: global settings of the postgresql subchart
postgresql:
# postgresqlPassword is the password which is used when the postgresqlUsername equals "postgres"
postgresqlPassword: "password"
# redis: global settings of the postgresql subchart
redis:
# password to use in case there no external secret was provided
password: "password=="
app:
tag: "latest"
name: "action server image name"
extraEnvs:
- name: TEST_SHOP_ID
value:value
- name: DATABASE_NAME
value: db_name
# ingress settings
ingress:
# enabled should be `true` if you want to use this ingress
enabled: true
# annotations for the ingress
annotations:
nginx.ingress.kubernetes.io/ssl-passthrough: "true"
# kubernetes.io/ingress.class: nginx
# kubernetes.io/tls-acme: "true"
# hosts for this ingress
hosts:
- host: botapi.example.com
paths:
- /
# tls: Secrets for the certificates
tls:
- secretName: bot-tls
hosts:
- botapi.example.com
this is the magic
Thank you!
@wisdom_kwarteng do you mind sharing your Dockerfile (the part where you added the custom input channel)? I cannot seem to get it to work.
Hi @wisdom_kwarteng can you please specify what’s your extended rasa image? Is it a customized rasa image? If so then can you please attach your Dockerfile for it?
FROM rasa/rasa:3.2.5-full
COPY rest_input.py /app/rest_input.py
Worked for me