chore: update environment configuration and build outputs

- Added new output path for build artifacts in turbo.json to include "build/**".
- Updated .env.example to include required environment variables for database and Redis connections, enhancing clarity for setup.
- Refined self-hosting documentation to ensure accurate configuration for public server URLs and object storage options.
This commit is contained in:
Rotimi Best
2026-03-11 07:43:24 +01:00
parent 58347850ea
commit 09abbc3cb4
6 changed files with 91 additions and 50 deletions
+36 -33
View File
@@ -1,40 +1,43 @@
DATABASE_URL=
# Required
DATABASE_URL=""
REDIS_URL=""
PUBLIC_SERVER_URL=""
## Object storage - choose one option below
TRUSTED_ORIGINS=""
BETTER_AUTH_SECRET=""
# Option A: Cloudflare R2 (legacy)
# CLOUDFLARE_BUCKET_DOMAIN=https://cdn.example.com
# CLOUDFLARE_ACCESS_KEY=
# CLOUDFLARE_SECRET_ACCESS_KEY=
# CLOUDFLARE_ACCOUNT_ID=
# CLOUDFLARE_IMAGE_BUCKET_DOMAIN=https://media.example.com
AUTH_BEARER_TOKEN=""
AUTH_COOKIE_DOMAIN=""
# Option B: MinIO or other S3-compatible storage (on-premise, data residency)
# When API runs locally: use localhost. When API runs in Docker: use http://minio:9000
# OBJECT_STORAGE_ENDPOINT=http://localhost:9000
# OBJECT_STORAGE_PUBLIC_ENDPOINT=http://localhost:9000
# OBJECT_STORAGE_ACCESS_KEY_ID=minioadmin
# OBJECT_STORAGE_SECRET_ACCESS_KEY=minioadmin
# OBJECT_STORAGE_FORCE_PATH_STYLE=true
# OBJECT_STORAGE_MEDIA_PUBLIC_BASE_URL=http://localhost:9000/media
SMTP_HOST=""
SMTP_PORT=""
SMTP_USER=""
SMTP_SENDER=""
SMTP_PASSWORD=""
# Email
SMTP_HOST=
SMTP_USER=
SMTP_PASSWORD=
SMTP_PORT=
SMTP_SENDER=
# Optional - MinIO (S3-compatible, for Docker / on-premise self-hosting)
# When API runs in Docker: use http://minio:9000. For local API: use http://localhost:9000
MINIO_ROOT_USER=""
MINIO_ROOT_PASSWORD=""
OBJECT_STORAGE_ENDPOINT=""
OBJECT_STORAGE_PUBLIC_ENDPOINT=""
OBJECT_STORAGE_ACCESS_KEY_ID=""
OBJECT_STORAGE_SECRET_ACCESS_KEY=""
OBJECT_STORAGE_FORCE_PATH_STYLE=""
OBJECT_STORAGE_MEDIA_PUBLIC_BASE_URL=""
# Enterprise features (optional for self-hosted deployments)
# Request a key from ClassroomIO. Leave empty if you do not use Enterprise-only features.
LICENSE_KEY=
# Optional - Cloudflare R2 (for hosted deployments)
CLOUDFLARE_BUCKET_ID=""
CLOUDFLARE_ACCESS_KEY=""
CLOUDFLARE_ACCOUNT_ID=""
CLOUDFLARE_BUCKET_DOMAIN=""
CLOUDFLARE_SECRET_ACCESS_KEY=""
SENTRY_DNS=""
# Sentry DNS
SENTRY_DNS=
# Enterprise (Optional)
# Required only when using Enterprise-only features (SSO, token-auth, no-tracking)
LICENSE_KEY=""
OPENAPI_URL=
PRIVATE_SERVER_KEY=
# Public API URL (used for absolute URLs in emails, redirects, etc.)
PUBLIC_SERVER_URL=
# SSO (Optional)
# For enterprise SSO with SAML (future support)
# SSO_ENCRYPTION_KEY="your-32-character-secret-key"