66 lines
2.7 KiB
Bash
66 lines
2.7 KiB
Bash
# -----------------------------------------------------------------------------
|
||
# TodoList API 环境变量示例
|
||
# 用法:
|
||
# 1) 复制为 apps/api/.env
|
||
# 2) 按实际环境替换值(尤其是密钥、密码、令牌)
|
||
# -----------------------------------------------------------------------------
|
||
|
||
# [数据库] PostgreSQL 连接串
|
||
# 格式:postgresql://<user>:<password>@<host>:<port>/<db>?schema=public
|
||
DATABASE_URL="postgresql://postgres:postgres@localhost:5432/todolist?schema=public"
|
||
|
||
# [鉴权] Access Token 签名密钥(生产环境必须使用高强度随机值)
|
||
AUTH_ACCESS_SECRET="dev-access-secret"
|
||
# [鉴权] Access Token 有效期(秒),默认 15 分钟
|
||
AUTH_ACCESS_EXPIRES_IN_SECONDS="900"
|
||
# [鉴权] Refresh Token 有效期(秒),默认 30 天
|
||
AUTH_REFRESH_EXPIRES_IN_SECONDS="2592000"
|
||
# [鉴权] 邮箱验证码有效期(秒),默认 5 分钟
|
||
AUTH_EMAIL_CODE_TTL_SECONDS="300"
|
||
# [2FA] TOTP 签发方名称(会显示在验证器 App 中)
|
||
AUTH_TOTP_ISSUER="TodoList"
|
||
|
||
# [OAuth - GitHub] 第三方登录配置
|
||
OAUTH_GITHUB_CLIENT_ID="github-client-id"
|
||
OAUTH_GITHUB_CLIENT_SECRET="github-client-secret"
|
||
OAUTH_GITHUB_CALLBACK_URL="http://localhost:3000/auth/oauth/github/callback"
|
||
|
||
# [OAuth - QQ] 第三方登录配置
|
||
OAUTH_QQ_CLIENT_ID="qq-client-id"
|
||
OAUTH_QQ_CLIENT_SECRET="qq-client-secret"
|
||
OAUTH_QQ_CALLBACK_URL="http://localhost:3000/auth/oauth/qq/callback"
|
||
OAUTH_QQ_AUTH_URL="https://graph.qq.com/oauth2.0/authorize"
|
||
OAUTH_QQ_TOKEN_URL="https://graph.qq.com/oauth2.0/token"
|
||
|
||
# [OAuth - 微信] 第三方登录配置
|
||
OAUTH_WECHAT_CLIENT_ID="wechat-client-id"
|
||
OAUTH_WECHAT_CLIENT_SECRET="wechat-client-secret"
|
||
OAUTH_WECHAT_CALLBACK_URL="http://localhost:3000/auth/oauth/wechat/callback"
|
||
OAUTH_WECHAT_AUTH_URL="https://open.weixin.qq.com/connect/qrconnect"
|
||
OAUTH_WECHAT_TOKEN_URL="https://api.weixin.qq.com/sns/oauth2/access_token"
|
||
|
||
# [对象存储] S3/MinIO 配置(附件上传)
|
||
# 本地开发可使用 MinIO,生产可切换到云厂商 S3 兼容服务
|
||
S3_ENDPOINT="http://127.0.0.1:9000"
|
||
S3_REGION="us-east-1"
|
||
S3_BUCKET="todolist"
|
||
S3_ACCESS_KEY_ID="minioadmin"
|
||
S3_SECRET_ACCESS_KEY="minioadmin"
|
||
# MinIO 常用 true;AWS S3 常用 false
|
||
S3_FORCE_PATH_STYLE="true"
|
||
# 预签名上传 URL 的有效期(秒)
|
||
S3_PRESIGN_EXPIRES_SECONDS="900"
|
||
# 对外访问附件的基础地址(用于拼接公开 URL)
|
||
S3_PUBLIC_BASE_URL="http://127.0.0.1:9000"
|
||
|
||
# [邮件] SMTP 配置(验证码/DDL 提醒邮件)
|
||
MAIL_SMTP_HOST="smtp.example.com"
|
||
MAIL_SMTP_PORT="465"
|
||
# 465 通常为 true(SSL),587 通常为 false(STARTTLS)
|
||
MAIL_SMTP_SECURE="true"
|
||
MAIL_SMTP_USER="no-reply@example.com"
|
||
MAIL_SMTP_PASS="replace-with-smtp-password"
|
||
# 发件人显示名称与地址
|
||
MAIL_FROM_NAME="TodoList"
|
||
MAIL_FROM_ADDRESS="no-reply@example.com"
|