JARVIS

OTF n8n

active

Workspace

[OTF] Optimified

Created

Tue Mar 24

Updated

Tue Mar 24

Content

## Overview Self-hosted n8n workflow automation instance for Optimified. ## Infrastructure - **Platform:** Railway - **Railway Project:** otf-n8n-mattermost-umami - **Database:** Shared Postgres (shared with Mattermost and Umami in the same Railway project) - **Railway Domain:** primary-production-54118.up.railway.app - **Custom Domain:** automation.optimified.com (Cloudflare proxied) - **Port:** 5678 - **Version:** 2.12.3 - **Architecture:** Primary + Worker (queue mode via Redis) - **Queue:** Redis (separate Railway service) - **SMTP:** Configured (via `N8N_SMTP_*`) ## Environment Variables — Primary | Variable | Purpose | |----------|---------| | `DB_POSTGRESDB_DATABASE` | Postgres database name | | `DB_POSTGRESDB_HOST` | Postgres hostname | | `DB_POSTGRESDB_PASSWORD` | Postgres password | | `DB_POSTGRESDB_PORT` | Postgres port | | `DB_POSTGRESDB_USER` | Postgres user | | `DB_TYPE` | Database type (postgresdb) | | `ENABLE_ALPINE_PRIVATE_NETWORKING` | Railway private networking | | `EXECUTIONS_DATA_MAX_AGE` | Max age for execution data | | `EXECUTIONS_DATA_PRUNE` | Auto-prune old executions | | `EXECUTIONS_DATA_SAVE_ON_ERROR` | Save execution data on error | | `EXECUTIONS_DATA_SAVE_ON_SUCCESS` | Save execution data on success | | `EXECUTIONS_MODE` | Execution mode (queue) | | `EXECUTIONS_TIMEOUT` | Execution timeout | | `EXECUTIONS_TIMEOUT_MAX` | Max execution timeout | | `GENERIC_TIMEZONE` | Default timezone | | `N8N_EDITOR_BASE_URL` | Editor base URL | | `N8N_EMAIL_MODE` | Email mode | | `N8N_ENCRYPTION_KEY` | Encryption key for credentials | | `N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS` | File permission enforcement | | `N8N_HOST` | Public hostname | | `N8N_LISTEN_ADDRESS` | Internal listen address | | `N8N_PROTOCOL` | Protocol (https) | | `N8N_SMTP_HOST` | SMTP server | | `N8N_SMTP_PASS` | SMTP password | | `N8N_SMTP_PORT` | SMTP port | | `N8N_SMTP_SENDER` | SMTP from address | | `N8N_SMTP_SSL` | SMTP SSL enabled | | `N8N_SMTP_USER` | SMTP username | | `N8N_TRUST_PROXY` | Trust reverse proxy headers | | `NODE_OPTIONS` | Node.js runtime options | | `OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS` | Offload manual runs to workers | | `PORT` | Railway port binding | | `QUEUE_BULL_REDIS_DUALSTACK` | Redis dual-stack networking | | `QUEUE_BULL_REDIS_HOST` | Redis host for job queue | | `QUEUE_BULL_REDIS_PASSWORD` | Redis password for job queue | | `QUEUE_BULL_REDIS_PORT` | Redis port for job queue | | `QUEUE_BULL_REDIS_USERNAME` | Redis username for job queue | | `TZ` | Timezone | | `WEBHOOK_URL` | Public webhook URL | ## Environment Variables — Worker | Variable | Purpose | |----------|---------| | `DB_POSTGRESDB_DATABASE` | Postgres database name | | `DB_POSTGRESDB_HOST` | Postgres hostname | | `DB_POSTGRESDB_PASSWORD` | Postgres password | | `DB_POSTGRESDB_PORT` | Postgres port | | `DB_POSTGRESDB_USER` | Postgres user | | `DB_TYPE` | Database type (postgresdb) | | `ENABLE_ALPINE_PRIVATE_NETWORKING` | Railway private networking | | `EXECUTIONS_MODE` | Execution mode (queue) | | `N8N_ENCRYPTION_KEY` | Encryption key for credentials | | `N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS` | File permission enforcement | | `N8N_LISTEN_ADDRESS` | Internal listen address | | `NODE_OPTIONS` | Node.js runtime options | | `OFFLOAD_MANUAL_EXECUTIONS_TO_WORKERS` | Offload manual runs to workers | | `PORT` | Railway port binding | | `QUEUE_BULL_REDIS_DUALSTACK` | Redis dual-stack networking | | `QUEUE_BULL_REDIS_HOST` | Redis host for job queue | | `QUEUE_BULL_REDIS_PASSWORD` | Redis password for job queue | | `QUEUE_BULL_REDIS_PORT` | Redis port for job queue | | `QUEUE_BULL_REDIS_USERNAME` | Redis username for job queue | | `WEBHOOK_URL` | Public webhook URL |