# ============================================================================ # Docker Environment Configuration (Example) # ============================================================================ # Copy this file to .env.docker and replace with your actual values # # NOTE: Build-time placeholders are set in each service's dofigen.yml file. # Values in this file override those placeholders at runtime via docker compose. # Required values are marked with [REQUIRED] # DATABASE # ============================================================================ # LibSQL database connection - points to the libsql container DATABASE_URL=http://libsql:8080 DATABASE_AUTH_TOKEN= # ClickHouse (optional - for advanced analytics) CLICKHOUSE_URL= CLICKHOUSE_USERNAME= CLICKHOUSE_PASSWORD= # REDIS & QUEUE # ============================================================================ # Redis (optional) - for caching UPSTASH_REDIS_REST_URL=http://localhost:6379 UPSTASH_REDIS_REST_TOKEN=placeholder # QStash (optional - for background jobs) QSTASH_CURRENT_SIGNING_KEY= QSTASH_NEXT_SIGNING_KEY= QSTASH_TOKEN= QSTASH_URL=https://qstash.upstash.io/v1/publish/ # ANALYTICS # ============================================================================ # Tinybird (optional - for monitor analytics and charts) # Leave empty to disable analytics features # Get from: https://www.tinybird.co TINY_BIRD_API_KEY= # Tinybird URL (optional - defaults to cloud API) # For local Tinybird container, set to: http://tinybird-local:7181 TINYBIRD_URL= # EMAIL # ============================================================================ # [REQUIRED] Resend API key for sending magic link emails # Get from: https://resend.com RESEND_API_KEY=re_your_resend_api_key_here # AUTHENTICATION # ============================================================================ # [REQUIRED] NextAuth secret - generate with: openssl rand -base64 32 AUTH_SECRET=your-random-secret-here-min-32-chars # [REQUIRED] Self-hosted mode - enables magic link authentication # Set to "true" to allow email login without OAuth SELF_HOST="true" # GitHub OAuth (optional) # Get from: https://github.com/settings/developers AUTH_GITHUB_ID= AUTH_GITHUB_SECRET= # Google OAuth (optional) # Get from: https://console.cloud.google.com AUTH_GOOGLE_ID= AUTH_GOOGLE_SECRET= # GOOGLE CLOUD # ============================================================================ # Google Cloud Platform (optional - for scheduled tasks) GCP_PROJECT_ID=your-value GCP_LOCATION=your-value GCP_CLIENT_EMAIL=your-value GCP_PRIVATE_KEY=your-value # Cron secret for scheduled jobs CRON_SECRET=your-random-cron-secret # API KEYS # ============================================================================ # Unkey (optional - for API key management) # Get from: https://unkey.dev UNKEY_API_ID= UNKEY_TOKEN= # Super admin token for privileged operations SUPER_ADMIN_TOKEN= # Server region identifier FLY_REGION=self-hosted # STRIPE # ============================================================================ # Stripe (optional - for payments) # Get from: https://stripe.com/docs/keys STRIPE_SECRET_KEY= STRIPE_WEBHOOK_SECRET_KEY= NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY= # VERCEL # ============================================================================ # Vercel (optional - for custom domains) # Get from: https://vercel.com PROJECT_ID_VERCEL= TEAM_ID_VERCEL= VERCEL_AUTH_BEARER_TOKEN= # Vercel Blob storage (optional) BLOB_READ_WRITE_TOKEN= # OBSERVABILITY # ============================================================================ # Sentry (optional - error tracking) # Get from: https://sentry.io NEXT_PUBLIC_SENTRY_DSN= SENTRY_AUTH_TOKEN= # OpenPanel (optional - analytics) # Get from: https://openpanel.dev NEXT_PUBLIC_OPENPANEL_CLIENT_ID= OPENPANEL_CLIENT_SECRET= # PagerDuty (optional - alerting) PAGERDUTY_APP_ID= # Slack webhook (optional) SLACK_SUPPORT_WEBHOOK_URL= # Telegram Bot (optional) TELEGRAM_BOT_TOKEN= # SERVICE CONFIGURATION # ============================================================================ NODE_ENV=production # [REQUIRED] Public URL for the application NEXT_PUBLIC_URL=http://localhost:3002 # Screenshot service (optional) SCREENSHOT_SERVICE_URL= # External services OPENSTATUS_INGEST_URL=https://openstatus-private-location.fly.dev # DEVELOPMENT & TESTING # ============================================================================ # Turbo build mode TURBO_ENV_MODE=loose # Playground API keys (optional) PLAYGROUND_UNKEY_API_KEY= # Workspace settings (optional) WORKSPACES_LOOKBACK_30= WORKSPACES_HIDE_URL=