环境变量
MCPHub 使用环境变量进行配置。本指南涵盖了所有可用的变量及其用法。核心应用设置
服务器配置
认证与安全
JWT 配置
Better Auth(可选:GitHub / Google / 本地 OIDC 登录)
Better Auth 会在src/betterAuth.ts 中于启动时初始化一次,因此无论是改环境变量还是改 systemConfig.auth.betterAuth / systemConfig.install.baseUrl,都需要重启后才会生效。
对于非敏感的 Better Auth 配置,MCPHub 现在按以下优先级解析:
BETTER_AUTH_*环境变量systemConfig.auth.betterAuth(来自mcp_settings.json或数据库系统配置)- 内置默认值
DB_URL;纯文件模式不支持 Better Auth 登录。
非敏感的 Better Auth 配置仍然可以放在
systemConfig.auth.betterAuth 中,但现在推荐优先使用 BETTER_AUTH_* 环境变量。一个纯环境变量驱动的本地 OIDC 配置示例如下:
配置示例
开发环境
生产环境
Docker 环境
环境变量加载
MCPHub 按以下顺序加载环境变量:- 系统环境变量
.env.local(被 git 忽略).env.{NODE_ENV}(例如,.env.production).env
使用 dotenv-expand
MCPHub 支持变量扩展:安全最佳实践
- 永远不要将密钥提交到版本控制
- 为生产环境使用强大、独特的密钥
- 定期轮换密钥
- 使用特定于环境的文件
- 在启动时验证所有环境变量
- 为容器部署使用 Docker 密钥