Version: 1.1.x

Add Environment Variables

Adding Environment Variables

To add extra environment variables to your containers, add the environment variable to an extraEnvs array on the service in your values.yml. These values can be provided directly or refer to secrets. The extraEnvs parameter is available for the rasa, rasax, eventService, and app services. For example:

# rasa: Settings common for all Rasa containers
rasa:
# other configured parameters
# ...
extraEnvs:
- name: "SANIC_RESPONSE_TIMEOUT"
value: 7200
# app (custom action server) specific settings
app:
# other configured parameters
# ...
extraEnvs:
- name: "SECRET_USERNAME"
valueFrom:
secretKeyRef:
name: "login-secret"
key: "username"

To add environment variables to the postgres, rabbit, or redis services, see Configuring the Subcharts.

Available Environment Variables

The environment variables below are configured by the Rasa X Helm chart and should only need to be configured directly in certain circumstances such as e.g. when using Oracle as a database. They are listed for reference and for cases where you do need to configure them directly.

Rasa Variables

These variables define the behavior of the Rasa containers and how the other services connect to them.

VariableDefault ValueDescription
RASA_TOKENNo default, must be defined in .envAuthentication token for the Rasa service. This is used by other services to communicate with Rasa.
RASA_MODEL_PULL_INTERVAL10How often to check for new models, in seconds
RABBITMQ_QUEUE (rasa-production)rasa_production_eventsWhich Rabbit event queue to publish events to.
DB_DATABASE (rasa-production)trackerWhich database table to use to access and store trackers.
DB_DATABASE (rasa-worker)worker_trackerWhich database table to use to access and store trackers.
POSTGRESQL_SCHEMANo defaultPostgreSQL track store database schema to access. By default, Rasa accesses the public schema.
RASA_MODEL_SERVERhttp://rasa-x:5002 /api/models/tags/productionURL where to access stored models and store new ones.

Rasa X API Variables

These variables define the behavior of the Rasa X API and how the other services connect to it.

VariableDefault ValueDescription
RASA_X_HOST"http://rasa-x:5002"The URL of the Rasa X services. This is used by other services to connect to the Rasa X API.
RASA_X_TOKENNo default, must be defined in .envThe token used for authentication between other services and the Rasa X API.
RASA_X_USERNAME (only for Rasa Enterprise)adminIf RASA_X_PASSWORD is specified then the user with this username will be created automatically after Rasa X is started for the first time.
RASA_X_PASSWORDNo default, must be defined in .env if you want user to be createdIf specified, this user with username RASA_X_USERNAME will be created immediately after Rasa X is started for the first time.
JWT_SECRETNo default, must be defined in .envSymmetric JWT token for authentication protection of the Rasa API server.
RASA_USER_APP""http://app:5055""URL of the custom action server.
RASA_PRODUCTION_HOSThttp://rasa-production:5005Host and port at which to find the rasa-production server.
RASA_WORKER_HOST"http://rasa-worker:5005"Host and port at which to find the rasa-worker server.
RASA_WORKER_TOKENInterpolated from RASA_TOKENAuthentication token used to connect to the Rasa services.
RASA_MODEL_DIR/app/modelsThe directory in which models are stored on the Rasa X container.
RABBITMQ_QUEUErasa_production_eventsWhich queue to read conversation events from.
ROOT_URL"/"Root URL for the frontend to check for resources. Use this if you are hosting your Rasa X instance on a subdirectory of a domain. No trailing slash.
PASSWORD_SALTNo default, must be defined in .envSalt used to securely store the users passwords.
RASA_X_USER_ANALYTICS0Binary value specifying whether Rasa X UI users’ conversations should be included in conversation analytics in the analytics tab. (Rasa Enterprise only)
SANIC_RESPONSE_TIMEOUT28800Number of seconds a request can run before Sanic generates a 503 response.
SANIC_REQUEST_MAX_SIZE_IN_BYTES800000000Maximum size of requests sent to server. For uploading large models.
SANIC_ACCESS_CONTROL_MAX_AGE1800Value (in seconds) to use for the Access-Control-Max-Age header in responses to preflight requests.
RUN_EVENT_CONSUMER_AS_SEPARATE_SERVICE"false"Whether the event service is run as a separate service. If "false", Rasa X will launch the event service automatically as a subprocess.
JWT_PUBLIC_KEY_PATH"/app/public_key"Path where to store JWT authentication.
JWT_PRIVATE_KEY_PATH"/app/private_key"Path where to store JWT authentication.
JWT_EXPIRATION_TIME28800Expiration time in seconds for JWT tokens.
DEBUG_MODE"false"Whether or not to turn on debug logs.
LOG_LEVEL"INFO"Log level to use, overwritten by DEBUG_MODE if DEBUG_MODE variable is set.
SAML_PATH"/app/auth/saml"Path at which to store SAML authentication (Rasa Enterprise).
SAML_DEFAULT_ROLE"tester"Role to assign to SSO users upon first sign on (Rasa Enterprise).
RASA_MODEL_DIR"/app/models"Directory where models are stored on the Rasa X container.
CREDENTIALS_PATH"/app/credentials.yml"Path to credentials.yml in the Rasa X container.
RASA_X_SSL_CERTIFICATENonePath to SSL certificate if running the rasa-x container on HTTPS.
RASA_X_SSL_KEYFILENonePath to SSL keyfile if running the rasa-x container on HTTPS.
RASA_X_SSL_PASSWORDNonePath to SSL password if running the rasa-x container on HTTPS with a password-protected keyfile.
DEFAULT_E2E_TESTS_DIR"tests"Directory where tests are saved on the Rasa X container.
DEFAULT_E2E_TEST_FILE_PATH"conversation_tests.md"File inside DEFAULT_E2E_TESTS_DIR where end-to-end tests are saved by default on the Rasa X container.
MAX_DUMPING_DELAY_IN_SECONDS60Training data changes are dumped to disk in a batches. This variable describes the maximum time in seconds after which changes are dumped to disk.
POSTGRESQL_SCHEMANo defaultPostgreSQL database schema to access. By default, Rasa X accesses the public schema.
note

Changing some of these variables requires changes in other containers; for example, if updating your endpoints path, you should also add the new path (relative from the app directory) to the start up command of your Rasa containers with the --endpoints flag.

RabbitMQ Variables

These variables define the behavior of RabbitMQ and how the other services connect to it. More information about RabbitMQ can be found in the RabbitMQ docs.

VariableDescription
RABBITMQ_HOSTHostname of the RabbitMQ instance.
RABBITMQ_PORTPort of the RabbitMQ instance.
RABBITMQ_USERNAMEUsername used by other services to access RabbitMQ.
RABBITMQ_PASSWORDPassword used by other services to access RabbitMQ.
RABBITMQ_QUEUEQueue from which the event service should read messages.

DB Variables

These variables define the connection details for the Rasa X database / the Rasa Open Source tracker store.

VariableDefault ValueDescription
DB_HOST"db"Hostname of the container hosting the PostgreSQL database.
DB_PORT"5432"Port used by other services to access the database.
POSTGRESQL_USERNAME (DB_USER)"admin"Username used by other services to access the database.
POSTGRESQL_PASSWORD (DB_PASSWORD)No default, must be defined in .envPassword used by other services to access the database.
DB_LOGIN_DB"rasa"Database connection used to create tracker database.
POSTGRESQL_DATABASE (DB_DATABASE)"rasa"Database used by other services to access the database.