环境变量

MCPHub 使用环境变量进行配置。本指南涵盖了所有可用的变量及其用法。

核心应用设置

服务器配置

变量默认值描述
PORT3000HTTP 服务器的端口号
INIT_TIMEOUT300000应用程序的初始超时时间
BASE_PATH''应用程序的基本路径
READONLYfalse设置为 true 以启用只读模式
MCPHUB_SETTING_PATHMCPHub 设置文件的路径
NODE_ENVdevelopment应用程序环境 (development, production, test)
PORT=3000
INIT_TIMEOUT=300000
BASE_PATH=/api
READONLY=true
MCPHUB_SETTING_PATH=/path/to/settings
NODE_ENV=production

认证与安全

JWT 配置

变量默认值描述
JWT_SECRET-用于 JWT 令牌签名的密钥 (必需)
JWT_SECRET=your-super-secret-key-change-this-in-production

配置示例

开发环境

# .env.development
NODE_ENV=development
PORT=3000

# 认证
JWT_SECRET=dev-secret-key

生产环境

# .env.production
NODE_ENV=production
PORT=3000

# 安全
JWT_SECRET=your-super-secure-production-secret

Docker 环境

# .env.docker
NODE_ENV=production
PORT=3000

# 安全
JWT_SECRET_FILE=/run/secrets/jwt_secret

环境变量加载

MCPHub 按以下顺序加载环境变量:
  1. 系统环境变量
  2. .env.local (被 git 忽略)
  3. .env.{NODE_ENV} (例如, .env.production)
  4. .env

使用 dotenv-expand

MCPHub 支持变量扩展:
BASE_URL=https://api.example.com
API_ENDPOINT=${BASE_URL}/v1

安全最佳实践

  1. 永远不要将密钥提交到版本控制
  2. 为生产环境使用强大、独特的密钥
  3. 定期轮换密钥
  4. 使用特定于环境的文件
  5. 在启动时验证所有环境变量
  6. 为容器部署使用 Docker 密钥