# Source: https://trigger.dev/docs/self-hosting/env/webapp.md

> ## Documentation Index
> Fetch the complete documentation index at: https://trigger.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Webapp

> Environment variables for the webapp container.

| Name                                             | Required | Default                                        | Description                                                                                               |
| :----------------------------------------------- | :------- | :--------------------------------------------- | :-------------------------------------------------------------------------------------------------------- |
| **Secrets**                                      |          |                                                |                                                                                                           |
| `SESSION_SECRET`                                 | Yes      | —                                              | Session encryption secret. Run: `openssl rand -hex 16`                                                    |
| `MAGIC_LINK_SECRET`                              | Yes      | —                                              | Magic link encryption secret. Run: `openssl rand -hex 16`                                                 |
| `ENCRYPTION_KEY`                                 | Yes      | —                                              | Secret store encryption key. Run: `openssl rand -hex 16`                                                  |
| `MANAGED_WORKER_SECRET`                          | No       | managed-secret                                 | Managed worker secret. Should be changed and match supervisor.                                            |
| **Domains & ports**                              |          |                                                |                                                                                                           |
| `REMIX_APP_PORT`                                 | No       | 3030                                           | Remix app port.                                                                                           |
| `APP_ORIGIN`                                     | Yes      | [http://localhost:3030](http://localhost:3030) | App origin URL.                                                                                           |
| `LOGIN_ORIGIN`                                   | Yes      | [http://localhost:3030](http://localhost:3030) | Login origin URL. Most likely the same as `APP_ORIGIN`.                                                   |
| `API_ORIGIN`                                     | No       | `APP_ORIGIN`                                   | API origin URL.                                                                                           |
| `STREAM_ORIGIN`                                  | No       | `APP_ORIGIN`                                   | Realtime stream origin URL.                                                                               |
| `ELECTRIC_ORIGIN`                                | No       | [http://localhost:3060](http://localhost:3060) | Electric origin URL.                                                                                      |
| **Postgres**                                     |          |                                                |                                                                                                           |
| `DATABASE_URL`                                   | Yes      | —                                              | PostgreSQL connection string.                                                                             |
| `DIRECT_URL`                                     | Yes      | —                                              | Direct DB connection string used for migrations etc.                                                      |
| `DATABASE_CONNECTION_LIMIT`                      | No       | 10                                             | Max DB connections.                                                                                       |
| `DATABASE_POOL_TIMEOUT`                          | No       | 60                                             | DB pool timeout (s).                                                                                      |
| `DATABASE_CONNECTION_TIMEOUT`                    | No       | 20                                             | DB connect timeout (s).                                                                                   |
| `DATABASE_READ_REPLICA_URL`                      | No       | `DATABASE_URL`                                 | Read-replica DB string.                                                                                   |
| **Redis**                                        |          |                                                |                                                                                                           |
| `REDIS_HOST`                                     | Yes      | —                                              | Redis host.                                                                                               |
| `REDIS_PORT`                                     | Yes      | —                                              | Redis port.                                                                                               |
| `REDIS_READER_HOST`                              | No       | `REDIS_HOST`                                   | Redis reader host.                                                                                        |
| `REDIS_READER_PORT`                              | No       | `REDIS_PORT`                                   | Redis reader port.                                                                                        |
| `REDIS_USERNAME`                                 | No       | —                                              | Redis username.                                                                                           |
| `REDIS_PASSWORD`                                 | No       | —                                              | Redis password.                                                                                           |
| `REDIS_TLS_DISABLED`                             | No       | —                                              | Disable Redis TLS.                                                                                        |
| **Auth**                                         |          |                                                |                                                                                                           |
| `WHITELISTED_EMAILS`                             | No       | —                                              | Whitelisted emails regex.                                                                                 |
| `AUTH_GITHUB_CLIENT_ID`                          | No       | —                                              | GitHub client ID.                                                                                         |
| `AUTH_GITHUB_CLIENT_SECRET`                      | No       | —                                              | GitHub client secret.                                                                                     |
| **Email**                                        |          |                                                |                                                                                                           |
| `EMAIL_TRANSPORT`                                | No       | —                                              | Email transport type. One of `resend`, `smtp`, `aws-ses`.                                                 |
| `FROM_EMAIL`                                     | No       | —                                              | From email address.                                                                                       |
| `REPLY_TO_EMAIL`                                 | No       | —                                              | Reply-to email address.                                                                                   |
| `RESEND_API_KEY`                                 | No       | —                                              | Resend API key.                                                                                           |
| `SMTP_HOST`                                      | No       | —                                              | SMTP host.                                                                                                |
| `SMTP_PORT`                                      | No       | —                                              | SMTP port.                                                                                                |
| `SMTP_SECURE`                                    | No       | —                                              | SMTP secure flag.                                                                                         |
| `SMTP_USER`                                      | No       | —                                              | SMTP user.                                                                                                |
| `SMTP_PASSWORD`                                  | No       | —                                              | SMTP password.                                                                                            |
| `AWS_REGION`                                     | No       | —                                              | AWS region for SES.                                                                                       |
| `AWS_ACCESS_KEY_ID`                              | No       | —                                              | AWS access key ID for SES.                                                                                |
| `AWS_SECRET_ACCESS_KEY`                          | No       | —                                              | AWS secret access key for SES.                                                                            |
| **Graphile & Redis worker**                      |          |                                                |                                                                                                           |
| `WORKER_CONCURRENCY`                             | No       | 10                                             | Redis worker concurrency.                                                                                 |
| `WORKER_POLL_INTERVAL`                           | No       | 1000                                           | Redis worker poll interval (ms).                                                                          |
| `WORKER_SCHEMA`                                  | No       | graphile\_worker                               | Graphile worker schema.                                                                                   |
| `GRACEFUL_SHUTDOWN_TIMEOUT`                      | No       | 60000 (1m)                                     | Graphile graceful shutdown timeout (ms). Affects shutdown time.                                           |
| **Concurrency limits**                           |          |                                                |                                                                                                           |
| `DEFAULT_ENV_EXECUTION_CONCURRENCY_LIMIT`        | No       | 100                                            | Default env execution concurrency.                                                                        |
| `DEFAULT_ORG_EXECUTION_CONCURRENCY_LIMIT`        | No       | 300                                            | Default org execution concurrency, needs to be 3x env concurrency.                                        |
| **Dev**                                          |          |                                                |                                                                                                           |
| `DEV_MAX_CONCURRENT_RUNS`                        | No       | 25                                             | Sets the max concurrency for dev runs via the CLI.                                                        |
| `DEV_OTEL_EXPORTER_OTLP_ENDPOINT`                | No       | `APP_ORIGIN/otel`                              | OTel endpoint for dev runs.                                                                               |
| **Rate limiting**                                |          |                                                |                                                                                                           |
| `API_RATE_LIMIT_REFILL_INTERVAL`                 | No       | 10s                                            | API rate limit refill interval.                                                                           |
| `API_RATE_LIMIT_MAX`                             | No       | 750                                            | API rate limit max.                                                                                       |
| `API_RATE_LIMIT_REFILL_RATE`                     | No       | 250                                            | API rate limit refill rate.                                                                               |
| `API_RATE_LIMIT_REQUEST_LOGS_ENABLED`            | No       | 0                                              | API rate limit request logs.                                                                              |
| `API_RATE_LIMIT_REJECTION_LOGS_ENABLED`          | No       | 1                                              | API rate limit rejection logs.                                                                            |
| `API_RATE_LIMIT_LIMITER_LOGS_ENABLED`            | No       | 0                                              | API rate limit limiter logs.                                                                              |
| `API_RATE_LIMIT_JWT_WINDOW`                      | No       | 1m                                             | API rate limit JWT window.                                                                                |
| `API_RATE_LIMIT_JWT_TOKENS`                      | No       | 60                                             | API rate limit JWT tokens.                                                                                |
| **Deploy & Registry**                            |          |                                                |                                                                                                           |
| `DEPLOY_REGISTRY_HOST`                           | Yes      | —                                              | Deploy registry host.                                                                                     |
| `DEPLOY_REGISTRY_USERNAME`                       | No       | —                                              | Deploy registry username.                                                                                 |
| `DEPLOY_REGISTRY_PASSWORD`                       | No       | —                                              | Deploy registry password.                                                                                 |
| `DEPLOY_REGISTRY_NAMESPACE`                      | No       | trigger                                        | Deploy registry namespace.                                                                                |
| `DEPLOY_IMAGE_PLATFORM`                          | No       | linux/amd64                                    | Deploy image platform, same values as docker `--platform` flag.                                           |
| `DEPLOY_TIMEOUT_MS`                              | No       | 480000 (8m)                                    | Deploy timeout (ms).                                                                                      |
| **Object store (S3)**                            |          |                                                |                                                                                                           |
| `OBJECT_STORE_BASE_URL`                          | No       | —                                              | Object store base URL.                                                                                    |
| `OBJECT_STORE_ACCESS_KEY_ID`                     | No       | —                                              | Object store access key.                                                                                  |
| `OBJECT_STORE_SECRET_ACCESS_KEY`                 | No       | —                                              | Object store secret key.                                                                                  |
| `OBJECT_STORE_REGION`                            | No       | —                                              | Object store region.                                                                                      |
| `OBJECT_STORE_SERVICE`                           | No       | s3                                             | Object store service.                                                                                     |
| **Alerts**                                       |          |                                                |                                                                                                           |
| `ORG_SLACK_INTEGRATION_CLIENT_ID`                | No       | —                                              | Slack client ID. Required for Slack alerts.                                                               |
| `ORG_SLACK_INTEGRATION_CLIENT_SECRET`            | No       | —                                              | Slack client secret. Required for Slack alerts.                                                           |
| `ALERT_EMAIL_TRANSPORT`                          | No       | —                                              | Alert email transport.                                                                                    |
| `ALERT_FROM_EMAIL`                               | No       | —                                              | Alert from email.                                                                                         |
| `ALERT_REPLY_TO_EMAIL`                           | No       | —                                              | Alert reply-to email.                                                                                     |
| `ALERT_RESEND_API_KEY`                           | No       | —                                              | Alert Resend API key.                                                                                     |
| `ALERT_SMTP_HOST`                                | No       | —                                              | Alert SMTP host.                                                                                          |
| `ALERT_SMTP_PORT`                                | No       | —                                              | Alert SMTP port.                                                                                          |
| `ALERT_SMTP_SECURE`                              | No       | —                                              | Alert SMTP secure.                                                                                        |
| `ALERT_SMTP_USER`                                | No       | —                                              | Alert SMTP user.                                                                                          |
| `ALERT_SMTP_PASSWORD`                            | No       | —                                              | Alert SMTP password.                                                                                      |
| **Limits**                                       |          |                                                |                                                                                                           |
| `TASK_PAYLOAD_OFFLOAD_THRESHOLD`                 | No       | 524288 (512KB)                                 | Max task payload size before offloading to S3.                                                            |
| `TASK_PAYLOAD_MAXIMUM_SIZE`                      | No       | 3145728 (3MB)                                  | Max task payload size.                                                                                    |
| `BATCH_TASK_PAYLOAD_MAXIMUM_SIZE`                | No       | 1000000 (1MB)                                  | Max batch payload size.                                                                                   |
| `TASK_RUN_METADATA_MAXIMUM_SIZE`                 | No       | 262144 (256KB)                                 | Max metadata size.                                                                                        |
| `MAX_BATCH_V2_TRIGGER_ITEMS`                     | No       | 500                                            | Max batch size (legacy v2 API).                                                                           |
| `STREAMING_BATCH_MAX_ITEMS`                      | No       | 1000                                           | Max items in streaming batch (v3 API, requires SDK 4.3.1+).                                               |
| `STREAMING_BATCH_ITEM_MAXIMUM_SIZE`              | No       | 3145728 (3MB)                                  | Max size per item in streaming batch.                                                                     |
| `MAXIMUM_DEV_QUEUE_SIZE`                         | No       | —                                              | Max dev queue size.                                                                                       |
| `MAXIMUM_DEPLOYED_QUEUE_SIZE`                    | No       | —                                              | Max deployed queue size.                                                                                  |
| **OTel limits**                                  |          |                                                |                                                                                                           |
| `TRIGGER_OTEL_SPAN_ATTRIBUTE_COUNT_LIMIT`        | No       | 1024                                           | OTel span attribute count limit.                                                                          |
| `TRIGGER_OTEL_LOG_ATTRIBUTE_COUNT_LIMIT`         | No       | 1024                                           | OTel log attribute count limit.                                                                           |
| `TRIGGER_OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT` | No       | 131072                                         | OTel span attribute value length limit.                                                                   |
| `TRIGGER_OTEL_LOG_ATTRIBUTE_VALUE_LENGTH_LIMIT`  | No       | 131072                                         | OTel log attribute value length limit.                                                                    |
| `TRIGGER_OTEL_SPAN_EVENT_COUNT_LIMIT`            | No       | 10                                             | OTel span event count limit.                                                                              |
| `TRIGGER_OTEL_LINK_COUNT_LIMIT`                  | No       | 2                                              | OTel link count limit.                                                                                    |
| `TRIGGER_OTEL_ATTRIBUTE_PER_LINK_COUNT_LIMIT`    | No       | 10                                             | OTel attribute per link count limit.                                                                      |
| `TRIGGER_OTEL_ATTRIBUTE_PER_EVENT_COUNT_LIMIT`   | No       | 10                                             | OTel attribute per event count limit.                                                                     |
| `SERVER_OTEL_SPAN_ATTRIBUTE_VALUE_LENGTH_LIMIT`  | No       | 8192                                           | OTel span attribute value length limit.                                                                   |
| **Realtime**                                     |          |                                                |                                                                                                           |
| `REALTIME_STREAM_MAX_LENGTH`                     | No       | 1000                                           | Realtime stream max length.                                                                               |
| `REALTIME_STREAM_TTL`                            | No       | 86400 (1d)                                     | Realtime stream TTL (s).                                                                                  |
| **Bootstrap**                                    |          |                                                |                                                                                                           |
| `TRIGGER_BOOTSTRAP_ENABLED`                      | No       | 0                                              | Trigger bootstrap enabled.                                                                                |
| `TRIGGER_BOOTSTRAP_WORKER_GROUP_NAME`            | No       | —                                              | Trigger bootstrap worker group name.                                                                      |
| `TRIGGER_BOOTSTRAP_WORKER_TOKEN_PATH`            | No       | —                                              | Trigger bootstrap worker token path.                                                                      |
| **Run engine**                                   |          |                                                |                                                                                                           |
| `RUN_ENGINE_WORKER_COUNT`                        | No       | 4                                              | Run engine worker count.                                                                                  |
| `RUN_ENGINE_TASKS_PER_WORKER`                    | No       | 10                                             | Run engine tasks per worker.                                                                              |
| `RUN_ENGINE_WORKER_CONCURRENCY_LIMIT`            | No       | 10                                             | Run engine worker concurrency limit.                                                                      |
| `RUN_ENGINE_WORKER_POLL_INTERVAL`                | No       | 100                                            | Run engine worker poll interval (ms).                                                                     |
| `RUN_ENGINE_WORKER_IMMEDIATE_POLL_INTERVAL`      | No       | 100                                            | Run engine worker immediate poll interval (ms).                                                           |
| `RUN_ENGINE_WORKER_SHUTDOWN_TIMEOUT_MS`          | No       | 60000 (1m)                                     | Run engine worker shutdown timeout (ms).                                                                  |
| `RUN_ENGINE_RATE_LIMIT_REFILL_INTERVAL`          | No       | 10s                                            | Run engine rate limit refill interval.                                                                    |
| `RUN_ENGINE_RATE_LIMIT_MAX`                      | No       | 1200                                           | Run engine rate limit max.                                                                                |
| `RUN_ENGINE_RATE_LIMIT_REFILL_RATE`              | No       | 400                                            | Run engine rate limit refill rate.                                                                        |
| `RUN_ENGINE_RATE_LIMIT_REQUEST_LOGS_ENABLED`     | No       | 0                                              | Run engine rate limit request logs.                                                                       |
| `RUN_ENGINE_RATE_LIMIT_REJECTION_LOGS_ENABLED`   | No       | 1                                              | Run engine rate limit rejection logs.                                                                     |
| `RUN_ENGINE_RATE_LIMIT_LIMITER_LOGS_ENABLED`     | No       | 0                                              | Run engine rate limit limiter logs.                                                                       |
| **Misc**                                         |          |                                                |                                                                                                           |
| `TRIGGER_TELEMETRY_DISABLED`                     | No       | —                                              | Disable telemetry.                                                                                        |
| `NODE_MAX_OLD_SPACE_SIZE`                        | No       | 8192                                           | Maximum memory allocation for Node.js heap in MiB (e.g. "4096" for 4GB).                                  |
| `OPENAI_API_KEY`                                 | No       | —                                              | OpenAI API key.                                                                                           |
| `MACHINE_PRESETS_OVERRIDE_PATH`                  | No       | —                                              | Path to machine presets override file. See [machine overrides](/self-hosting/overview#machine-overrides). |
| `APP_ENV`                                        | No       | `NODE_ENV`                                     | App environment. Used for things like the title tag.                                                      |
| `ADMIN_EMAILS`                                   | No       | —                                              | Regex of user emails to automatically promote to admin on signup. Does not apply to existing users.       |
| `EVENT_LOOP_MONITOR_ENABLED`                     | No       | 1                                              | Node.js event loop lag monitor.                                                                           |