Files
xiaoxia-saas/.env.example
T
Xiaoxia AI 749ef7f55a
Tests / test (push) Failing after 30s
Tests / lint (push) Failing after 31s
chore: add production environment configuration system
2026-06-15 18:32:05 +08:00

86 lines
2.1 KiB
Bash

# =======================
# 应用基础配置
# =======================
APP_ENV=development # development / staging / production
APP_NAME=xiaoxia-saas
APP_VERSION=0.1.0
DEBUG=true
# =======================
# API 服务配置
# =======================
API_HOST=0.0.0.0
API_PORT=8000
API_PREFIX=/api/v1
# =======================
# Web 前端配置
# =======================
WEB_PORT=3000
WEB_URL=http://localhost:3000
# =======================
# 数据库配置
# =======================
DATABASE_URL=postgresql+psycopg://postgres:postgres@localhost:5432/xiaoxia_saas
DATABASE_POOL_SIZE=20
DATABASE_MAX_OVERFLOW=40
DATABASE_POOL_TIMEOUT=30
DATABASE_POOL_RECYCLE=3600
# =======================
# Redis 配置
# =======================
REDIS_URL=redis://localhost:6379/0
REDIS_MAX_CONNECTIONS=50
# =======================
# Celery Worker 配置
# =======================
CELERY_BROKER_URL=redis://localhost:6379/0
CELERY_RESULT_BACKEND=redis://localhost:6379/1
CELERY_WORKER_CONCURRENCY=4
CELERY_WORKER_MAX_TASKS_PER_CHILD=1000
# =======================
# MinIO 对象存储配置
# =======================
MINIO_ENDPOINT=localhost:9000
MINIO_ACCESS_KEY=CHANGE_ME
MINIO_SECRET_KEY=CHANGE_ME
MINIO_BUCKET=xiaoxia-assets
MINIO_SECURE=false
MINIO_PUBLIC_URL=http://localhost:9000
# =======================
# 日志配置
# =======================
LOG_LEVEL=INFO # DEBUG / INFO / WARNING / ERROR / CRITICAL
LOG_FORMAT=json # json / text
LOG_FILE=/var/log/xiaoxia-saas/app.log
# =======================
# CORS 配置
# =======================
CORS_ORIGINS=http://localhost:3000,http://localhost:8000
CORS_ALLOW_CREDENTIALS=true
# =======================
# 文件上传限制
# =======================
MAX_UPLOAD_SIZE_MB=1000
ALLOWED_FILE_TYPES=video/mp4,video/quicktime,video/x-msvideo,audio/mpeg,audio/wav,image/jpeg,image/png,image/gif
# =======================
# 安全配置
# =======================
SECRET_KEY=change-me-in-production-to-a-random-string-at-least-32-chars
ACCESS_TOKEN_EXPIRE_MINUTES=60
REFRESH_TOKEN_EXPIRE_DAYS=7
# =======================
# 监控与追踪(可选)
# =======================
# SENTRY_DSN=
# PROMETHEUS_PORT=9090