Environment Variables
Learn how to configure environment variables for Flowise
Flowise support different environment variables to configure your instance. You can specify the following variables in the .env
file inside packages/server
folder. Refer to .env.example file.
PORT
The HTTP port Flowise runs on
Number
3000
FLOWISE_USERNAME
Username to login
String
FLOWISE_PASSWORD
Password to login
String
FLOWISE_FILE_SIZE_LIMIT
Maximum file size when uploading
String
50mb
NUMBER_OF_PROXIES
Rate Limit Proxy
Number
CORS_ORIGINS
The allowed origins for all cross-origin HTTP calls
String
IFRAME_ORIGINS
The allowed origins for iframe src embedding
String
SHOW_COMMUNITY_NODES
Display nodes that are created by community
Boolean: true
or false
DISABLED_NODES
Comma separated list of node names to disable
String
For Database
DATABASE_TYPE
Type of database to store the flowise data
Enum String: sqlite
, mysql
, postgres
sqlite
DATABASE_PATH
Location where database is saved (When DATABASE_TYPE is sqlite)
String
your-home-dir/.flowise
DATABASE_HOST
Host URL or IP address (When DATABASE_TYPE is not sqlite)
String
DATABASE_PORT
Database port (When DATABASE_TYPE is not sqlite)
String
DATABASE_USER
Database username (When DATABASE_TYPE is not sqlite)
String
DATABASE_PASSWORD
Database password (When DATABASE_TYPE is not sqlite)
String
DATABASE_NAME
Database name (When DATABASE_TYPE is not sqlite)
String
DATABASE_SSL
Database SSL is required (When DATABASE_TYPE is not sqlite)
Boolean: true
or false
false
For Storage
Flowise store the following files under a local path folder by default.
Files uploaded on Document Loaders/Document Store
Image/Audio uploads from chat
Images/Files from Assistant
Files from Vector Upsert API
User can specify STORAGE_TYPE
to use AWS S3 or local path
STORAGE_TYPE
Type of storage for uploaded files. default is local
Enum String: s3
, local
local
BLOB_STORAGE_PATH
Local folder path where uploaded files are stored when STORAGE_TYPE
is local
String
your-home-dir/.flowise/storage
S3_STORAGE_BUCKET_NAME
Bucket name to hold the uploaded files when STORAGE_TYPE
is s3
String
S3_STORAGE_ACCESS_KEY_ID
AWS Access Key
String
S3_STORAGE_SECRET_ACCESS_KEY
AWS Secret Key
String
S3_STORAGE_REGION
Region for S3 bucket
String
S3_ENDPOINT_URL
Custom S3 endpoint (optional)
String
S3_FORCE_PATH_STYLE
Force S3 path style (optional)
Boolean
false
GOOGLE_CLOUD_STORAGE_CREDENTIAL
Google Cloud Service Account Key
String
GOOGLE_CLOUD_STORAGE_PROJ_ID
Google Cloud Project ID
String
GOOGLE_CLOUD_STORAGE_BUCKET_NAME
Google Cloud Storage Bucket Name
String
GOOGLE_CLOUD_UNIFORM_BUCKET_ACCESS
Type of Access
Boolean
true
For Debugging and Logs
DEBUG
Print logs from components
Boolean
LOG_PATH
Location where log files are stored
String
Flowise/packages/server/logs
LOG_LEVEL
Different levels of logs
Enum String: error
, info
, verbose
, debug
info
DEBUG
: if set to true, will print logs to terminal/console:
LOG_LEVEL
: Different log levels for loggers to be saved. Can be error
, info
, verbose
, or debug.
By default it is set to info,
only logger.info
will be saved to the log files. If you want to have complete details, set to debug
.
Logs Streaming S3
When STORAGE_TYPE
env variable is set to s3
, logs will be automatically streamed and stored to S3. New log file will be created hourly, enabling easier debugging.
For Credentials
Flowise store your third party API keys as encrypted credentials using an encryption key.
By default, a random encryption key will be generated when starting up the application and stored under a file path. This encryption key is then retrieved everytime to decrypt the credentials used within a chatflow. For example, your OpenAI API key, Pinecone API key, etc.
You can configure to use AWS Secret Manager to store the encryption key instead.
SECRETKEY_STORAGE_TYPE
How to store the encryption key
Enum String: local
, aws
local
SECRETKEY_PATH
Local file path where encryption key is saved
String
Flowise/packages/server
FLOWISE_SECRETKEY_OVERWRITE
Encryption key to be used instead of the existing key
String
SECRETKEY_AWS_ACCESS_KEY
String
SECRETKEY_AWS_SECRET_KEY
String
SECRETKEY_AWS_REGION
String
For some reasons, sometimes encryption key might be re-generated or the stored path was changed, this will cause errors like - Credentials could not be decrypted.
To avoid this, you can set your own encryption key as FLOWISE_SECRETKEY_OVERWRITE
, so that the same encryption key will be used everytime. There is no restriction on the format, you can set it as any text that you want, or the same as your FLOWISE_PASSWORD
.
Credential API Key returned from the UI is not the same length as your original Api Key that you have set. This is a fake prefix string that prevents network spoofing, that's why we are not returning the Api Key back to UI. However, the correct Api Key will be retrieved and used during your interaction with the chatflow.
For Models
In some cases, you might want to use custom model on the existing Chat Model and LLM nodes, or restrict access to only certain models.
By default, Flowise pulls the model list from here. However user can create their own models.json
file and specify the file path:
MODEL_LIST_CONFIG_JSON
Link to load list of models from your models.json
config file
String
For API Keys
Users can create multiple API keys within Flowise in order to authenticate with the APIs. By default, keys get stored as a JSON file to your local file path. User can change the behavior by using the below env variable.
APIKEY_STORAGE_TYPE
Method to store API keys
Enum string: json
, db
json
APIKEY_PATH
Location where the API keys are stored when APIKEY_STORAGE_TYPE
is unspecified or json
String
Flowise/packages/server
Using db
as storage type will store the API keys to database instead of a local JSON file.
For Built-In and External Dependencies
There are certain nodes/features within Flowise that allow user to run Javascript code. For security reasons, by default it only allow certain dependencies. It's possible to lift that restriction for built-in and external modules by setting the following environment variables:
TOOL_FUNCTION_BUILTIN_DEP
NodeJS built-in modules to be used for Tool Function
String
TOOL_FUNCTION_EXTERNAL_DEP
External modules to be used for Tool Function
String
Examples of how to set environment variables
NPM
You can set all these variables when running Flowise using npx. For example:
Docker
Docker Compose
You can set all these variables in the .env
file inside docker
folder. Refer to .env.example file.
Last updated