| # ============================================================== | |
| # OPTIM AI BRE Engine — Environment Variables | |
| # STEP 1: Copy this file: cp .env.example .env | |
| # STEP 2: Edit .env and change every CHANGE_ME value | |
| # NEVER commit .env to version control | |
| # ============================================================== | |
| # ============================================================== | |
| # POSTGRESQL | |
| # ============================================================== | |
| POSTGRES_DB=optimai_bre | |
| POSTGRES_USER=optimai | |
| POSTGRES_PASSWORD=CHANGE_ME_STRONG_PASSWORD_HERE | |
| # ============================================================== | |
| # REDIS | |
| # ============================================================== | |
| REDIS_PASSWORD=CHANGE_ME_REDIS_PASSWORD_HERE | |
| # ============================================================== | |
| # JWT SECRET KEY | |
| # Must be minimum 32 characters, random string. | |
| # Generate one: | |
| # Windows: -join ((65..90)+(97..122)+(48..57) | Get-Random -Count 64 | % {[char]$_}) | |
| # Linux: openssl rand -base64 48 | |
| # ============================================================== | |
| JWT_SECRET_KEY=CHANGE_ME_MINIMUM_32_CHAR_RANDOM_STRING_FOR_PRODUCTION | |
| JWT_ISSUER=OptimAI.BRE | |
| JWT_AUDIENCE=OptimAI.BRE.Clients | |
| JWT_ACCESS_TOKEN_EXPIRY_MINUTES=480 | |
| JWT_REFRESH_TOKEN_EXPIRY_DAYS=30 | |
| # ============================================================== | |
| # AI SERVICE (Optional — BRE works without this) | |
| # Leave AZURE_OPENAI_KEY blank to disable AI features. | |
| # | |
| # Option A — Azure OpenAI: | |
| # USE_AZURE_OPENAI=true | |
| # AZURE_OPENAI_ENDPOINT=https://YOUR-RESOURCE.openai.azure.com/ | |
| # AZURE_OPENAI_KEY=your-azure-openai-key | |
| # | |
| # Option B — OpenAI: | |
| # USE_AZURE_OPENAI=false | |
| # AZURE_OPENAI_KEY=sk-your-openai-key-here | |
| # ============================================================== | |
| USE_AZURE_OPENAI=false | |
| AZURE_OPENAI_ENDPOINT= | |
| AZURE_OPENAI_KEY= | |
| AZURE_OPENAI_MODEL=gpt-4o | |
| # ============================================================== | |
| # APPLICATION DOMAIN | |
| # Used for CORS allowed origins. | |
| # Set to your server IP or domain. Examples: | |
| # http://192.168.1.100 | |
| # https://bre.yourcompany.com | |
| # ============================================================== | |
| APP_DOMAIN=http://localhost | |
| # ============================================================== | |
| # RULE ENGINE SETTINGS | |
| # ============================================================== | |
| RULE_ENGINE_MAX_CONCURRENT=100 | |
| RULE_ENGINE_TIMEOUT_MS=5000 | |
| RULE_ENGINE_CACHE_TTL_MINUTES=5 | |
| LOG_LEVEL=Information | |
| # ============================================================== | |
| # POSTGRES VERSIONS (pin for reproducibility) | |
| # ============================================================== | |
| POSTGRES_VERSION=15-alpine | |
| REDIS_VERSION=7-alpine | |
| NGINX_VERSION=1.25-alpine | |