Skip to content

Overview

After the installation, there are some configurations that need to be configured for each of the components. This section describes all the available configurations needed for each component to work correctly. Using these configurations the setup can be tweaked as needed.

The configurations for each component needs to be present in the corresponding config file:

  • api_config.py: For the API Server and Celery Tasks
  • app_config.py: For the Web Application Server
  • jupyterhub_config.py: For the Jupyter Notebook (Jupyterhub)
  • jupyter_server_config.py: For the Jupyter Notebook (Notebook server)

Configuration using Environment Variables

It is possible to configure the platform using environment variables instead of (or in combination with) config files mentioned above. This might be more convenient in a cloud based deployment setting or while using a centralized secret management system (like Hashicorp Vault).

When working with secret management systems, configurations could be loaded as environment variables during deployment of the platform.

When configuring API/APP component via environment variables, prepend the configuration key with CORRIDOR_. Below are some examples for some standard data types,

Setting in api_config.py Environment Variable Equivalent
LICENSE_KEY = xxxxxxx export CORRIDOR_LICENSE_KEY=xxxxxxx
WORKER_PROCESSES = 1 export CORRIDOR_WORKER_PROCESSES=1
REQUIRE_SIMULATION = False export CORRIDOR_REQUIRE_SIMULATION=false
WORKER_QUEUES = ['api', 'spark', 'quick_spark'] export CORRIDOR_WORKER_QUEUES="['api', 'spark', 'quick_spark']"