集中管理多家 One-API 站点的新选择:One API Hub 深度指南

“把 AI 服务的钥匙都挂在一把钥匙扣上,而不是每天翻遍口袋找。”


目录

  1. 为什么需要 One API Hub?
  2. 它能做什么?——功能全景图
  3. 动手之前:你需要准备什么
  4. 本地开发:15 分钟跑起来
  5. 生产部署:Docker 一键上线
  6. 常见问题答疑(FAQ)
  7. 下一步可以做什么

1. 为什么需要 One API Hub?

如果你用过 New API、Veloera、VoAPI、OneHub 这类 One-API 兼容站点,大概率遇到过以下情景:

场景 痛点
每天打开 5 个不同后台查看余额 登录麻烦,容易忘
忘记哪个站点还有额度 资源浪费
想导出自己的 Key 做备份 手动复制粘贴
想给所有站点批量签到 一个个点网页

One API Hub 就是一把“万能钥匙扣”:

  • 一处登录,就能查看所有站点的余额、Key、签到状态;
  • 一处备份,所有配置和 Key 都可导出 JSON;
  • 一处部署,Docker 一条命令即可上线,不挑服务器。

2. 它能做什么?——功能全景图

2.1 统一登录

  • 单用户管理员模式,基于 JWT;
  • 界面只输入密码即可进入(用户名固定为 admin)。

2.2 站点管理

操作 说明
添加 输入站点地址、凭据即可
编辑 修改凭据或备注
删除 一键移除,不影响原站点数据

2.3 站点校验

每次添加或更新时,后端会立即请求一次目标站点的 /user/dashboard 接口,验证凭据是否有效,失败会给出明确提示。

2.4 账户信息查询

自动拉取以下字段并展示在表格里:

  • 用户名
  • 总额度
  • 已用额度
  • 剩余额度

2.5 API Key 查询

列出每个站点下 所有 Key 的:

  • 密钥字符串(脱敏显示,可点击复制)
  • 已用额度
  • 剩余额度

2.6 每日签到

根据站点类型自动调用对应接口(如 /user/checkin),结果会显示成功/失败及获得额度。

2.7 数据导出 / 导入

  • 导出:生成一个 JSON 文件,包含所有站点配置及 Key。
  • 导入:上传 JSON 即可恢复,适合迁移或备份。

2.8 仪表盘

首页卡片式汇总:

  • 总站点数
  • API Key 总数
  • 总额度
  • 整体使用率

home
图:仪表盘首页

setting
图:站点设置页


3. 动手之前:你需要准备什么

项目 最低要求 推荐
Node.js 18.x 及以上 20.x LTS
包管理器 npm、pnpm、yarn 均可 npm
操作系统 Win / macOS / Linux Linux(部署省心)
内存 512 MB 可用 1 GB
磁盘 100 MB 以上 SSD

4. 本地开发:15 分钟跑起来

步骤 1:克隆或下载源码

git clone <仓库地址>
cd one-api-hub

步骤 2:安装依赖

npm ci

ciinstall 更快更干净,适合 CI 与多人协作。

步骤 3:启动开发环境

npm run dev

终端会出现两行提示:

  • 前端:http://localhost:3000
  • 后端:http://localhost:8000

浏览器打开 http://localhost:3000,输入初始密码 admin123456 即可进入后台。

步骤 4:添加第一个站点

  1. 点击左侧菜单「站点管理」→「添加站点」;
  2. 填写名称、地址、凭据(通常是 Cookie 或 Token);
  3. 点击「校验并保存」;
  4. 成功后,仪表盘会立即显示该站点的余额信息。

5. 生产部署:Docker 一键上线

5.1 构建镜像

docker build -t one-api-hub:latest .

5.2 准备环境变量

复制示例文件并编辑:

cp .env.example .env
# 用你喜欢的编辑器打开 .env

最小可运行的 .env 示例:

NODE_ENV=production
PORT=8000
ADMIN_INITIAL_PASSWORD=your-very-strong-password
JWT_SECRET=change-me-too

5.3 运行容器

docker run -d \
  --name one-api-hub \
  -p 8000:8000 \
  --env-file .env \
  -v one-api-hub:/data \
  -v one-api-hub:/app/logs \
  one-api-hub:latest

首次启动后,访问 http://<服务器IP>:8000,用刚才设置的密码登录即可。


6. 常见问题答疑(FAQ)

问题 回答
可以支持多用户吗? 目前设计为单用户管理员模式,团队场景可通过反向代理加 Basic Auth 实现简单隔离。
忘记密码怎么办? 停止容器,删除 /data/data.db,重启容器并重新设置 ADMIN_INITIAL_PASSWORD
数据库文件在哪? 开发模式下在项目根目录 ./data/data.db;生产模式下默认 /data/data.db(Docker 卷映射)。
如何更新版本? 1. 拉取最新代码 → 2. 重新 docker build → 3. docker stop 旧容器 → 4. 用新镜像启动。
日志怎么看? 容器内 /app/logs 已映射到卷,可直接 docker logs one-api-hub 或查看宿主机目录。
支持 HTTPS 吗? 镜像本身只提供 HTTP,可在前面加 Nginx/Caddy 反向代理并配置证书。
会不会泄露我的 Cookie/Token? 所有凭据仅保存在你自己的服务器 SQLite 中,不上传任何第三方。
可以跑在树莓派吗? 可以,镜像为 linux/arm64 多架构,内存占用 <100 MB。

7. 下一步可以做什么

  • 定时备份:写一条 cron,把 /data/data.db 每天打包备份到对象存储。
  • 监控告警:用 Prometheus + Grafana 监控容器 CPU、内存,余额低于阈值时发邮件。
  • 二次开发:前后端都是 TypeScript,结构清晰,你可以加“多用户”或“Webhook 通知”。
  • 贡献代码:提 Issue、发 PR,一起让钥匙扣更好用。

写在最后

One API Hub 不是“又一个看板”,而是把分散在各处的 AI 额度、Key、签到任务 真正集中到一个地方。它足够轻量,小到树莓派能跑;也足够开放,源码就在你面前。
愿你在 AI 服务的海洋里,不再为“钥匙”而烦恼。