Raypx

环境变量

所有环境变量的完整参考。

环境变量

Raypx 通过 .env 文件管理环境变量。项目根目录提供了 .env.example 模板,复制并填写你的值即可:

cp .env.example .env

VITE_PUBLIC_ 前缀说明

VITE_PUBLIC_ 开头的变量会在构建时被内联到客户端代码中(由 Vite 的 envPrefix 配置决定)。这些变量:

  • 可以在浏览器端访问 -- 不要在这些变量中存储密钥或敏感信息
  • 修改后需要重新构建 -- 它们在 pnpm build 时被静态替换

不带前缀的变量仅在服务端可用,适合存储密钥和内部配置。

应用配置

变量必填默认值说明
APP_KEY-应用加密密钥,用于数据加密
VITE_PUBLIC_WEB_URLhttp://localhost:3000站点公开 URL,用于生成外部链接
VITE_PUBLIC_PROJECT_NAMERaypx项目名称,显示在 UI 中
VITE_PUBLIC_BASE_URLhttp://localhost:3000基础 URL

数据库(PostgreSQL)

变量必填默认值说明
DATABASE_URL-PostgreSQL 连接字符串
DATABASE_POOL_MAX10连接池最大连接数
DATABASE_IDLE_TIMEOUT20空闲连接超时时间(秒)

连接字符串格式:

postgres://用户名:密码@主机:端口/数据库名

认证(Better Auth)

变量必填默认值说明
AUTH_SECRET-认证密钥,最少 32 个字符
AUTH_URLhttp://localhost:3000认证服务回调 URL
ADMIN_EMAILS-管理员邮箱列表,逗号分隔

AUTH_SECRET 是核心安全密钥,用于签名 session token。请使用强随机字符串(至少 32 字符),切勿泄露。

OAuth 认证

Google OAuth

变量必填默认值说明
VITE_PUBLIC_AUTH_GOOGLE_ID-Google OAuth Client ID
AUTH_GOOGLE_SECRET-Google OAuth Client Secret
VITE_PUBLIC_AUTH_GOOGLE_ENABLEDtrue是否启用 Google 登录
VITE_PUBLIC_AUTH_GOOGLE_ONE_TAP_ENABLEDfalse是否启用 Google One Tap

GitHub OAuth

变量必填默认值说明
VITE_PUBLIC_AUTH_GITHUB_ENABLEDtrue是否启用 GitHub 登录
AUTH_GITHUB_ID-GitHub OAuth Client ID
AUTH_GITHUB_SECRET-GitHub OAuth Client Secret

邮件(Resend)

变量必填默认值说明
AUTH_RESEND_KEY-Resend API 密钥
RESEND_FROM-发件人邮箱地址
MAIL_HOST-自定义 SMTP 主机
MAIL_PORT-自定义 SMTP 端口
MAIL_USER-自定义 SMTP 用户名
MAIL_PASSWORD-自定义 SMTP 密码
MAIL_SECURE-是否启用 TLS

存储

变量必填默认值说明
STORAGE_DRIVERlocal存储驱动类型(local
STORAGE_LOCAL_ROOT-本地存储根目录路径
STORAGE_REDIS_URL-Redis 存储连接 URL
STORAGE_REDIS_BASE-Redis 存储键前缀
STORAGE_REDIS_TTL_SECONDS-Redis 存储过期时间(秒)
REDIS_URL-Redis 连接 URL

UI 配置

变量必填默认值说明
VITE_PUBLIC_DEFAULT_THEMEdark默认主题(darklight
VITE_PUBLIC_LOCALE_DETECTIONfalse是否自动检测用户语言
VITE_PUBLIC_AUTH_URLhttp://localhost:3000认证服务前端 URL

AI 服务商(可选)

变量必填默认值说明
OPENAI_API_KEY-OpenAI API 密钥
OPENAI_PROXY_URL-OpenAI 代理 URL
DEEPSEEK_API_KEY-DeepSeek API 密钥
DEEPSEEK_PROXY_URL-DeepSeek 代理 URL
ZHIPU_API_KEY-智谱 AI API 密钥

分析(可选)

变量必填默认值说明
VITE_PUBLIC_GOOGLE_ANALYTICS_ID-Google Analytics 追踪 ID

On this page