* Update drafts * Sync CLI and env variables * More drafts * Converge CLI pages * Formalize env variables page * Remove Required column * Remove some variables * More tweaks to env * Small changes to CLI config * Add anchor links to env variables and cli options * Add cross references between cli and env options * Some qol tweaks to env variable page * Remove unused env variables * Fix double period * Fix typo --------- Co-authored-by: Ítalo Johnny <italojohnnydosanjos@gmail.com>
11 KiB
title, sidebar_position, slug
| title | sidebar_position | slug |
|---|---|---|
| Environment Variables | 7 | /environment-variables |
import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem';
Environment Variables
Langflow lets you configure a number of settings using environment variables.
Configure environment variables
Langflow recognizes supported environment variables from the following sources:
- Environment variables that you've set in your terminal.
- Environment variables that you've imported from a
.envfile using the--env-fileoption in the Langflow CLI.
You can choose to use one source exclusively, or use both sources together.
If you choose to use both sources together, be aware that environment variables imported from a .env file take precedence over those set in your terminal.
Set environment variables in your terminal
Run the following commands to set environment variables for your current terminal session:
```bash export VARIABLE_NAME='VALUE' ``` ``` set VARIABLE_NAME='VALUE' ``` ```bash docker run -it --rm \ -p 7860:7860 \ -e VARIABLE_NAME='VALUE' \ langflowai/langflow:latest ```When you start Langflow, it looks for environment variables that you've set in your terminal. If it detects a supported environment variable, then it automatically adopts the specified value, subject to precedence rules.
Import environment variables from a .env file
-
Create a
.envfile and open it in your preferred editor. -
Add your environment variables to the file:
VARIABLE_NAME='VALUE' VARIABLE_NAME='VALUE':::tip The Langflow project includes a
.env.examplefile to help you get started. You can copy the contents of this file into your own.envfile and replace the example values with your own preferred settings. ::: -
Save and close the file.
-
Start Langflow using the
```bash python -m langflow run --env-file .env ``` ```bash docker run -it --rm \ -p 7860:7860 \ --env-file .env \ langflowai/langflow:latest ```--env-fileoption to define the path to your.envfile:
On startup, Langflow imports the environment variables from your .env file, as well as any that you set in your terminal, and adopts their specified values.
Precedence
Environment variables defined in the .env file take precedence over those set in your terminal.
That means, if you happen to set the same environment variable in both your terminal and your .env file, Langflow adopts the value from the the .env file.
:::info[CLI precedence]
Langflow CLI options override the value of corresponding environment variables defined in the .env file as well as any environment variables set in your terminal.
:::
Supported environment variables
The following table lists the environment variables supported by Langflow.
| Variable | Format / Values | Default | Description |
|---|---|---|---|
DO_NOT_TRACK |
Boolean | false |
If enabled, Langflow will not track telemetry. |
LANGFLOW_AUTO_LOGIN |
Boolean | true |
Enable automatic login for Langflow. Set to false to disable automatic login and require the login form to log into the Langflow UI. Setting to false requires LANGFLOW_SUPERUSER and LANGFLOW_SUPERUSER_PASSWORD to be set. |
LANGFLOW_AUTO_SAVING |
Boolean | true |
Enable flow auto-saving. See --auto-saving option. |
LANGFLOW_AUTO_SAVING_INTERVAL |
Integer | 1000 |
Set the interval for flow auto-saving in milliseconds. See --auto-saving-interval option. |
LANGFLOW_BACKEND_ONLY |
Boolean | false |
Only run Langflow's backend server (no frontend). See --backend-only option. |
LANGFLOW_CACHE_TYPE |
asyncredismemorydiskcritical |
async |
Set the cache type for Langflow. If you set the type to redis, then you must also set the following environment variables: LANGFLOW_REDIS_HOST, LANGFLOW_REDIS_PORT, LANGFLOW_REDIS_DB, and LANGFLOW_REDIS_CACHE_EXPIRE. |
LANGFLOW_COMPONENTS_PATH |
String | langflow/components |
Path to the directory containing custom components. See --components-path option. |
LANGFLOW_CONFIG_DIR |
String | Set the Langflow configuration directory where files, logs, and the Langflow database are stored. | |
LANGFLOW_DATABASE_URL |
String | Set the database URL for Langflow. If you don't provide one, Langflow uses an SQLite database. | |
LANGFLOW_DEV |
Boolean | false |
Run Langflow in development mode (may contain bugs). See --dev option. |
LANGFLOW_FALLBACK_TO_ENV_VAR |
Boolean | true |
If enabled, global variables set in the Langflow UI fall back to an environment variable with the same name when Langflow fails to retrieve the variable value. |
LANGFLOW_FRONTEND_PATH |
String | ./frontend |
Path to the frontend directory containing build files. This is for development purposes only. See --frontend-path option. |
LANGFLOW_HEALTH_CHECK_MAX_RETRIES |
Integer | 5 |
Set the maximum number of retries for the health check. See --health-check-max-retries option. |
LANGFLOW_HOST |
String | 127.0.0.1 |
The host on which the Langflow server will run. See --host option. |
LANGFLOW_LANGCHAIN_CACHE |
InMemoryCacheSQLiteCache |
InMemoryCache |
Type of cache to use. See --cache option. |
LANGFLOW_LOG_FILE |
String | logs/langflow.log |
Set the path to the log file for Langflow. See --log-file option. |
LANGFLOW_LOG_LEVEL |
debuginfowarningerrorcritical |
critical |
Set the logging level. See --log-level option. |
LANGFLOW_MAX_FILE_SIZE_UPLOAD |
Integer | 100 |
Set the maximum file size for the upload in megabytes. See --max-file-size-upload option. |
LANGFLOW_OPEN_BROWSER |
Boolean | true |
Open the system web browser on startup. See --open-browser option. |
LANGFLOW_PORT |
Integer | 7860 |
The port on which the Langflow server will run. The server automatically selects a free port if the specified port is in use. See --port option. |
LANGFLOW_PROMETHEUS_ENABLED |
Boolean | false |
Expose Prometheus metrics. |
LANGFLOW_PROMETHEUS_PORT |
Integer | 9090 |
Set the port on which Langflow exposes Prometheus metrics. |
LANGFLOW_REDIS_CACHE_EXPIRE |
Integer | 3600 |
See LANGFLOW_CACHE_TYPE. |
LANGFLOW_REDIS_DB |
Integer | 0 |
See LANGFLOW_CACHE_TYPE. |
LANGFLOW_REDIS_HOST |
String | localhost |
See LANGFLOW_CACHE_TYPE. |
LANGFLOW_REDIS_PORT |
String | 6379 |
See LANGFLOW_CACHE_TYPE. |
LANGFLOW_REMOVE_API_KEYS |
Boolean | false |
Remove API keys from the projects saved in the database. See --remove-api-keys option. |
LANGFLOW_SAVE_DB_IN_CONFIG_DIR |
Boolean | false |
Save the Langflow database in LANGFLOW_CONFIG_DIR instead of in the Langflow package directory. Note, when this variable is set to default (false), the database isn't shared between different virtual environments and the database is deleted when you uninstall Langflow. |
LANGFLOW_STORE |
Boolean | true |
Enable the Langflow Store. See --store option. |
LANGFLOW_STORE_ENVIRONMENT_VARIABLES |
Boolean | true |
Store environment variables as global variables in the database. |
LANGFLOW_SUPERUSER |
String | Not set | Set the name for the superuser. Required if LANGFLOW_AUTO_LOGIN is set to false.See superuser --username option. |
LANGFLOW_SUPERUSER_PASSWORD |
String | Not set | Set the password for the superuser. Required if LANGFLOW_AUTO_LOGIN is set to false.See superuser --password option. |
LANGFLOW_VARIABLES_TO_GET_FROM_ENVIRONMENT |
String | Not set | Comma-separated list of environment variables to get from the environment and store as global variables. |
LANGFLOW_WORKER_TIMEOUT |
Integer | 300 |
Worker timeout in seconds. See --worker-timeout option. |
LANGFLOW_WORKERS |
Integer | 1 |
Number of worker processes. See --workers option. |