Openstatus
www.openstatus.dev
1# ============================================================================
2# Docker Environment Configuration (Example)
3# ============================================================================
4# Copy this file to .env.docker and replace with your actual values
5#
6# NOTE: Build-time placeholders are set in each service's dofigen.yml file.
7# Values in this file override those placeholders at runtime via docker compose.
8# Required values are marked with [REQUIRED]
9
10# DATABASE
11# ============================================================================
12# LibSQL database connection - points to the libsql container
13DATABASE_URL=http://libsql:8080
14DATABASE_AUTH_TOKEN=
15
16# ClickHouse (optional - for advanced analytics)
17CLICKHOUSE_URL=
18CLICKHOUSE_USERNAME=
19CLICKHOUSE_PASSWORD=
20
21# REDIS & QUEUE
22# ============================================================================
23# Redis (optional) - for caching
24UPSTASH_REDIS_REST_URL=http://localhost:6379
25UPSTASH_REDIS_REST_TOKEN=placeholder
26
27# QStash (optional - for background jobs)
28QSTASH_CURRENT_SIGNING_KEY=
29QSTASH_NEXT_SIGNING_KEY=
30QSTASH_TOKEN=
31QSTASH_URL=https://qstash.upstash.io/v1/publish/
32
33# ANALYTICS
34# ============================================================================
35# Tinybird (optional - for monitor analytics and charts)
36# Leave empty to disable analytics features
37# Get from: https://www.tinybird.co
38TINY_BIRD_API_KEY=
39
40# Tinybird URL (optional - defaults to cloud API)
41# For local Tinybird container, set to: http://tinybird-local:7181
42TINYBIRD_URL=
43
44# EMAIL
45# ============================================================================
46# [REQUIRED] Resend API key for sending magic link emails
47# Get from: https://resend.com
48RESEND_API_KEY=re_your_resend_api_key_here
49
50# AUTHENTICATION
51# ============================================================================
52# [REQUIRED] NextAuth secret - generate with: openssl rand -base64 32
53AUTH_SECRET=your-random-secret-here-min-32-chars
54
55# [REQUIRED] Self-hosted mode - enables magic link authentication
56# Set to "true" to allow email login without OAuth
57SELF_HOST=true
58
59# GitHub OAuth (optional)
60# Get from: https://github.com/settings/developers
61AUTH_GITHUB_ID=
62AUTH_GITHUB_SECRET=
63
64# Google OAuth (optional)
65# Get from: https://console.cloud.google.com
66AUTH_GOOGLE_ID=
67AUTH_GOOGLE_SECRET=
68
69# GOOGLE CLOUD
70# ============================================================================
71# Google Cloud Platform (optional - for scheduled tasks)
72GCP_PROJECT_ID=
73GCP_LOCATION=
74GCP_CLIENT_EMAIL=
75GCP_PRIVATE_KEY=
76
77# Cron secret for scheduled jobs
78CRON_SECRET=your-random-cron-secret
79
80# API KEYS
81# ============================================================================
82# Unkey (optional - for API key management)
83# Get from: https://unkey.dev
84UNKEY_API_ID=
85UNKEY_TOKEN=
86
87# Super admin token for privileged operations
88SUPER_ADMIN_TOKEN=
89
90# Server region identifier
91FLY_REGION=self-hosted
92
93# STRIPE
94# ============================================================================
95# Stripe (optional - for payments)
96# Get from: https://stripe.com/docs/keys
97STRIPE_SECRET_KEY=
98STRIPE_WEBHOOK_SECRET_KEY=
99NEXT_PUBLIC_STRIPE_PUBLISHABLE_KEY=
100
101# VERCEL
102# ============================================================================
103# Vercel (optional - for custom domains)
104# Get from: https://vercel.com
105PROJECT_ID_VERCEL=
106TEAM_ID_VERCEL=
107VERCEL_AUTH_BEARER_TOKEN=
108
109# Vercel Blob storage (optional)
110BLOB_READ_WRITE_TOKEN=
111
112# OBSERVABILITY
113# ============================================================================
114# Sentry (optional - error tracking)
115# Get from: https://sentry.io
116NEXT_PUBLIC_SENTRY_DSN=
117SENTRY_AUTH_TOKEN=
118
119# OpenPanel (optional - analytics)
120# Get from: https://openpanel.dev
121NEXT_PUBLIC_OPENPANEL_CLIENT_ID=
122OPENPANEL_CLIENT_SECRET=
123
124# PagerDuty (optional - alerting)
125PAGERDUTY_APP_ID=
126
127# Slack webhook (optional)
128SLACK_SUPPORT_WEBHOOK_URL=
129
130# SERVICE CONFIGURATION
131# ============================================================================
132NODE_ENV=production
133
134# [REQUIRED] Public URL for the application
135NEXT_PUBLIC_URL=http://localhost:3002
136
137# Screenshot service (optional)
138SCREENSHOT_SERVICE_URL=
139
140# External services
141OPENSTATUS_INGEST_URL=https://openstatus-private-location.fly.dev
142
143# DEVELOPMENT & TESTING
144# ============================================================================
145# Turbo build mode
146TURBO_ENV_MODE=loose
147
148# Playground API keys (optional)
149PLAYGROUND_UNKEY_API_KEY=
150
151# Workspace settings (optional)
152WORKSPACES_LOOKBACK_30=
153WORKSPACES_HIDE_URL=