基于 Docker 部署 One API 进行大模型接口管理与 Key 分发
项目简介
One API 是一个开源的 OpenAI 接口管理与分发系统。它支持多种主流大语言模型,包括 Azure、Anthropic Claude、Google PaLM 2 & Gemini、智谱 ChatGLM、百度文心一言、讯飞星火认知、阿里通义千问、360 智脑以及腾讯混元等。该项目旨在通过统一的 API 接口管理多个大模型的 Key,支持二次分发与配额管理,提供单可执行文件及打包好的 Docker 镜像,实现一键部署。
前置准备
在开始部署之前,请确保您的服务器环境满足以下要求:
- 操作系统:Linux (推荐 Ubuntu 20.04+ 或 CentOS 7+),Windows 或 macOS 亦可。
- Docker:安装并启动 Docker 服务(版本建议 20.10+)。
- 网络:服务器需能访问公网以拉取镜像,若使用国内镜像源请配置加速。
- 端口:确保 3000 端口未被占用。
- 数据库:根据并发量选择 SQLite(轻量级,适合测试)或 MySQL/PostgreSQL(生产环境推荐)。
部署方式
项目作者提供了多种部署方案,包括 Docker Compose、手动部署、宝塔面板等。本指南重点介绍最通用的 Docker 容器化部署。
1. 基础部署(SQLite 模式)
适用于个人学习或低并发场景,无需额外配置数据库。
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
--name one-api:容器名称。-d:后台运行。-p 3000:3000:映射宿主机 3000 端口到容器内部。-v ...:挂载数据卷,持久化配置文件与日志。
2. 生产部署(MySQL 模式)
当并发量较大时,建议使用 MySQL 存储数据以保证性能。
首先确保 MySQL 服务已启动,并创建好数据库用户。
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
注意:请将
SQL_DSN中的密码和数据库名替换为实际值。若数据库不在本地,需修改tcp(localhost:3306)为实际 IP。
初始配置
部署完成后,通过浏览器访问 http://服务器IP:3000。
1. 登录与初始化
首次访问会跳转到默认账号登录页。默认凭证通常为:
- 用户名:
root - 密码:
123456
登录后系统会强制要求修改密码,请务必设置强密码以保障安全。
2. 渠道配置
进入后台管理界面,点击左侧菜单的 渠道管理。
- 点击 添加渠道。


