跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像AI 生图工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
Shell / BashNode.jsSaaSAI

Docker 部署 One API 大模型 Key 分发及接口管理系统

如何使用 Docker 部署 One API 大模型接口管理系统。内容涵盖项目简介、SQLite 与 MySQL 两种部署模式、初始登录与渠道配置、Token 创建流程以及 NextChat 和 cURL 的集成测试方法。此外,文章补充了生产环境的环境变量配置、安全加固建议及常见问题排查指南,旨在帮助用户快速搭建稳定可靠的多模型统一分发平台。

极客零度发布于 2025/2/6更新于 2026/7/2138 浏览
Docker 部署 One API 大模型 Key 分发及接口管理系统

Docker 部署 One API 大模型 Key 分发及接口管理系统

项目简介

One API 是一个开源的 OpenAI 接口管理与分发系统。它支持多种主流大语言模型,包括 Azure、Anthropic Claude、Google PaLM 2 & Gemini、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元等。该系统可用于二次分发管理 API Key,提供统一的 API 入口,并具备英文 UI 界面。

核心特性:

  • 统一接口管理:通过单一 API 调用所有支持的 LLM。
  • 密钥管理:支持对多个模型的 Key 进行集中管理和配额控制。
  • 开箱即用:提供单可执行文件及打包好的 Docker 镜像。

环境准备

在开始部署之前,请确保您的服务器满足以下要求:

  1. 操作系统:Linux (推荐 Ubuntu 20.04+ 或 CentOS 7+)。
  2. Docker:已安装 Docker Engine (版本 20.10+)。
  3. 网络:服务器需能访问外网以拉取镜像(如 justsong/one-api)。
  4. 端口:确保 3000 端口未被占用。

部署方式

项目作者提供了多种部署方案,包括 Docker Compose、手动部署、宝塔面板部署等。本教程重点介绍最通用的 Docker 部署方式。

1. SQLite 模式(适合低并发)

对于测试环境或低并发场景,可以直接使用内置的 SQLite 数据库,无需额外配置 MySQL。

docker run --name one-api -d --restart always -p 3000:3000 -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api

2. MySQL 模式(适合高并发)

如果预期并发量较大,建议配置 MySQL 数据库以保证性能。需要设置 SQL_DSN 环境变量。

docker run --name one-api -d --restart always -p 3000:3000 \
-e SQL_DSN="root:your_password@tcp(localhost:3306)/oneapi" \
-e TZ=Asia/Shanghai \
-v /home/ubuntu/data/one-api:/data \
justsong/one-api

注意:请将 your_password 替换为您的实际 MySQL 密码,并确保 MySQL 服务可被容器访问。

初始配置

部署完成后,可以通过 http://服务器 IP:3000 访问管理后台。

1. 登录与修改密码

首次访问时,默认账号为 root,默认密码为 123456。出于安全考虑,登录后请立即修改密码。

2. 配置渠道 (Channels)

One API 的核心功能是聚合不同的大模型渠道。进入'渠道'页面,您可以添加各种模型的 API Key。

  • 添加渠道:点击新增,选择对应的模型提供商(如 OpenAI, Azure, 智谱等)。
  • 填写信息:输入模型名称、API Key、Base URL 等信息。
  • 测试连接:保存前可点击测试按钮验证连通性。

示例:配置自定义渠道(如 coze-discord-proxy)

  1. 在渠道列表中选择'自定义'。
  • 填写渠道名称和对应的请求头、URL 模板。
  • 提交保存后返回渠道页进行测试。
  • 3. 创建令牌 (Tokens)

    为了将服务分发给下游用户,需要生成 API Token。

    1. 进入'令牌管理'页面。
    2. 点击'创建令牌',设置令牌名称、有效期及关联的用户组。
    3. 复制生成的 Key,该 Key 可作为下游应用的认证凭证。

    客户端集成测试

    配置好 One API 后,即可将其作为代理接入到前端应用,例如 NextChat。

    1. NextChat 配置

    在 NextChat 的配置文件中,修改以下项:

    • API Key:填入刚才创建的 One API Token。
    • API Base URL:填入 One API 的服务地址(例如 http://服务器 IP:3000/v1)。

    2. 命令行测试 (cURL)

    您也可以直接使用 cURL 命令测试接口可用性:

    curl -X POST http://服务器 IP:3000/v1/chat/completions \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer YOUR_TOKEN" \
    -d '{
      "model": "gpt-3.5-turbo",
      "messages": [{"role": "user", "content": "Hello"}]
    }'
    

    进阶配置与维护

    环境变量详解

    除了基础的 SQL_DSN,以下环境变量常用于生产环境优化:

    • TZ:设置时区,避免日志时间混乱。
    • DATA_PATH:指定数据持久化路径。
    • LOG_LEVEL:控制日志输出级别(info, debug, error)。

    安全建议

    1. 防火墙限制:建议仅允许特定 IP 访问 3000 端口,防止未授权访问。
    2. HTTPS 加密:生产环境应配合 Nginx 反向代理开启 HTTPS。
    3. 定期备份:定期备份 /data 目录下的数据库文件和配置文件。
    4. 配额管理:在用户管理中设置每日/每月额度限制,防止 Key 被盗用导致高额费用。

    常见问题排查

    • 无法连接数据库:检查 SQL_DSN 格式是否正确,确认 MySQL 用户权限。
    • 模型响应超时:检查服务器网络状况,或调整 One API 内部的超时设置。
    • Token 无效:确认 Token 是否过期,或检查关联的用户状态是否正常。

    总结

    通过 Docker 部署 One API,可以快速搭建一个多模型统一的接口管理平台。它不仅简化了多模型调用的复杂度,还提供了完善的密钥管理和配额控制功能,非常适合企业或个人开发者构建基于大模型的应用服务。结合 NextChat 等前端工具,可以迅速实现私有化的 AI 对话体验。

    后续可根据业务需求,进一步探索多机部署、负载均衡及监控告警等高级功能。

    目录

    1. Docker 部署 One API 大模型 Key 分发及接口管理系统
    2. 项目简介
    3. 环境准备
    4. 部署方式
    5. 1. SQLite 模式(适合低并发)
    6. 2. MySQL 模式(适合高并发)
    7. 初始配置
    8. 1. 登录与修改密码
    9. 2. 配置渠道 (Channels)
    10. 3. 创建令牌 (Tokens)
    11. 客户端集成测试
    12. 1. NextChat 配置
    13. 2. 命令行测试 (cURL)
    14. 进阶配置与维护
    15. 环境变量详解
    16. 安全建议
    17. 常见问题排查
    18. 总结
    • 免费图片AI生成工具免费生成了解详情
    • Magick API 一键接入全球大模型注册送1000万token查看
    • 免费图片视频在线生成30秒,将你的创意变成现实开始设计
    • X/Twitter免费视频下载器免登陆无限额度免费视频解析下载了解详情
    • 100+免费在线小游戏爽一把
    极客日志微信公众号二维码

    微信扫一扫,关注极客日志

    微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

    更多推荐文章

    查看全部
    • Stable Diffusion:AI 图像生成技术解析
    • 主流 AI 编程模型对比与选型实战指南
    • Spring Security 核心原理与实战应用
    • C++ 模板进阶:非类型参数与特化详解
    • GitHub 多模态大模型项目复现流程
    • C++ 静态成员与非静态成员详解
    • 攻防世界 Web 题解(七):SQL 注入、文件上传与命令执行
    • C++ 继承中同名成员的隐藏规则与重载辨析
    • 排序算法的统一视角:问题拆分与组合解
    • 算法:双指针技巧及经典题目解析
    • Java 基础面试高频问题深度解析
    • 国外主流 AI 大模型在国内的接入与使用指南
    • 金仓数据库 SQL 防火墙:白名单驱动的安全防护
    • Python、PHP 与 JSP 支付页面开发实现对比
    • 算法分配测试任务:管理权威的数字化消解
    • JavaScript 条件语句与循环结构详解
    • 汽车雷达多径效应下的幽灵目标检测技术解析
    • Windows 系统常用 CMD 命令大全(108 个)
    • 大模型教程:使用 Milvus、vLLM 和 Llama 3.1 搭建 RAG 应用
    • Python 模拟 HTTP 请求实战指南

    相关免费在线工具

    • RSA密钥对生成器

      生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

    • Mermaid 预览与可视化编辑

      基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

    • 随机西班牙地址生成器

      随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

    • Base64 字符串编码/解码

      将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

    • Base64 文件转换器

      将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

    • Markdown转HTML

      将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online