专属
文档
插件
助手
邀请
顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像
专业版
轩辕镜像 官方专业版
轩辕镜像
专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单页面收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题轩辕镜像免费版
其他
关于我们网站地图
热门搜索:
ghcr.io/songquanpeng/one-api

ghcr.io/songquanpeng/one-api:v0.6.11-preview.7

ghcr.iolinux/amd64v0.6.11-preview.7大小: 未知更新于 2026年6月6日
让 AI 帮你使用轩辕镜像? · 展开查看说明

如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

One API

✨ 通过标准的 OpenAI API 格式访问所有的大模型,开箱即用 ✨

部署教程 · 使用方法 · 意见反馈 · 截图展示 · 在线演示 · 常见问题 · 相关项目 · 赞赏支持

[!NOTE] 本项目为开源项目,使用者必须在遵循 OpenAI 的使用条款以及**********的情况下使用,不得用于非法用途。

根据《生成式人工智能服务管理暂行办法》的要求,请勿对中国地区公众提供一切未经备案的生成式人工智能服务。

[!NOTE] 稳定版 / 预览版镜像地址:https://hub.docker.com/repository/docker/justsong/one-api 或者 https://github.com/songquanpeng/one-api/pkgs/container/one-api

alpha 版镜像地址:https://hub.docker.com/repository/docker/justsong/one-api-alpha 或者 https://github.com/songquanpeng/one-api/pkgs/container/one-api-alpha

[!WARNING] 使用 root 用户初次登录系统后,务必修改默认密码 123456!

功能

  1. 支持多种大模型:
  • OpenAI *** 系列模型(支持 Azure OpenAI API)
  • Anthropic Claude 系列模型 (支持 AWS Claude)
  • Google PaLM2/Gemini 系列模型
  • Mistral 系列模型
  • 字节跳动豆包大模型(火山引擎)
  • 百度文心一言系列模型
  • 阿里通义千问系列模型
  • 讯飞星火认知大模型
  • 智谱 ChatGLM 系列模型
  • 360 智脑
  • 腾讯混元大模型
  • Moonshot AI
  • 百川大模型
  • MINIMAX
  • Groq
  • https://github.com/ollama/ollama
  • 零一万物
  • 阶跃星辰
  • Coze
  • Cohere
  • DeepSeek
  • Cloudflare Workers AI
  • DeepL
  • together.ai
  • novita.ai
  • 硅基流动 SiliconCloud
  • xAI
  1. 支持配置镜像以及众多第三方代理服务。
  2. 支持通过负载均衡的方式访问多个渠道。
  3. 支持 stream 模式,可以通过流式传输实现打字机效果。
  4. 支持多机部署,详见此处。
  5. 支持令牌管理,设置令牌的过期时间、额度、允许的 IP 范围以及允许的模型访问。
  6. 支持兑换码管理,支持批量生成和导出兑换码,可使用兑换码为账户进行充值。
  7. 支持渠道管理,批量创建渠道。
  8. 支持用户分组以及渠道分组,支持为不同分组设置不同的倍率。
  9. 支持渠道设置模型列表。
  10. 支持查看额度明细。
  11. 支持用户邀请奖励。
  12. 支持以***为单位显示额度。
  13. 支持发布公告,设置充值链接,设置新用户初始额度。
  14. 支持模型映射,重定向用户的请求模型,如无必要请不要设置,设置之后会导致请求体被重新构造而非直接透传,会导致部分还未正式支持的字段无法传递成功。
  15. 支持失败自动重试。
  16. 支持绘图接口。
  17. 支持 Cloudflare AI Gateway,渠道设置的代理部分填写 https://gateway.ai.cloudflare.com/v1/ACCOUNT_TAG/GATEWAY/openai 即可。
  18. 支持丰富的自定义设置,
    1. 支持自定义系统名称,logo 以及页脚。
    2. 支持自定义首页和关于页面,可以选择使用 HTML & Markdown 代码进行自定义,或者使用一个单独的网页通过 iframe 嵌入。
  19. 支持通过系统访问令牌调用管理 API,进而在无需二开的情况下扩展和自定义 One API 的功能,详情请参考此处 API 文档。
  20. 支持 Cloudflare Turnstile 用户校验。
  21. 支持用户管理,支持多种用户登录注册方式:
    • 登录注册(支持注册白名单)以及通过***进行密码重置。
    • 支持飞书授权登录(这里有 One API 的实现细节阐述供参考)。
    • 支持 https://github.com/settings/applications/new%E3%80%82
    • 微信公众号授权(需要额外部署 https://github.com/songquanpeng/wechat-server%EF%BC%89%E3%80%82
  22. 支持主题切换,设置环境变量 THEME 即可,默认为 default,欢迎 PR 更多主题,具体参考此处。
  23. 配合 https://github.com/songquanpeng/message-pusher 可将报警信息推送到多种 App 上。

部署

基于 Docker 进行部署

# 使用 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
# 使用 MySQL 的部署命令,在上面的基础上添加 `-e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi"`,请自行修改数据库连接参数,不清楚如何修改请参见下面环境变量一节。
# 例如:
docker run --name one-api -d --restart always -p 3000:3000 -e SQL_DSN="root:123456@tcp(localhost:3306)/oneapi" -e TZ=Asia/Shanghai -v /home/ubuntu/data/one-api:/data justsong/one-api

其中,-p 3000:3000 中的第一个 3000 是宿主机的端口,可以根据需要进行修改。

数据和日志将会保存在宿主机的 /home/ubuntu/data/one-api 目录,请确保该目录存在且具有写入权限,或者更改为合适的目录。

如果启动失败,请添加 --privileged=true,具体参考 https://github.com/songquanpeng/one-api/issues/482 。

如果上面的镜像无法拉取,可以尝试使用 GitHub 的 Docker 镜像,将上面的 justsong/one-api 替换为 ghcr.io/songquanpeng/one-api 即可。

如果你的并发量较大,务必设置 SQL_DSN,详见下面环境变量一节。

更新命令:docker run --rm -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower -cR

Nginx 的参考配置:

server{
server_name openai.justsong.cn; # 请根据实际情况修改你的域名

location / {
client_max_body_size 64m;
proxy_http_version 1.1;
proxy_pass http://localhost:3000; # 请根据实际情况修改你的端口
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_cache_bypass $http_upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_read_timeout 300s; # GPT-4 需要较长的超时时间,请自行调整
}
}

之后使用 Let's Encrypt 的 certbot 配置 HTTPS:

# Ubuntu 安装 certbot:
sudo snap install --classic certbot
sudo ln -s /snap/bin/certbot /usr/bin/certbot
# 生成证书 & 修改 Nginx 配置
sudo certbot --nginx
# 根据指示进行操作
# 重启 Nginx
sudo service nginx restart

初始账号用户名为 root,密码为 123456。

通过宝塔面板进行一键部署

  1. 安装宝塔面板9.2.0及以上版本,前往 宝塔面板 官网,选择正式版的脚本下载安装;
  2. 安装后登录宝塔面板,在左侧菜单栏中点击 Docker,首次进入会提示安装 Docker 服务,点击立即安装,按提示完成安装;
  3. 安装完成后在应用商店中搜索 One-API,点击安装,配置域名等基本信息即可完成安装;

基于 Docker Compose 进行部署

仅启动方式不同,参数设置不变,请参考基于 Docker 部署部分

# 目前支持 MySQL 启动,数据存储在 ./data/mysql 文件夹内
docker-compose up -d

# 查看部署状态
docker-compose ps

手动部署

  1. 从 https://github.com/songquanpeng/one-api/releases/latest 下载可执行文件或者从源码编译:
git clone https://github.com/songquanpeng/one-api.git

# 构建前端
cd one-api/web/default
npm install
npm run build

# 构建后端
cd ../..
go mod download
go build -ldflags "-s -w" -o one-api
  1. 运行:
chmod u+x one-api
./one-api --port 3000 --log-dir ./logs
  1. 访问 http://localhost:3000/ 并登录。初始账号用户名为 root,密码为 123456。

更加详细的部署教程参见此处。

多机部署

  1. 所有服务器 SESSION_SECRET 设置一样的值。
  2. 必须设置 SQL_DSN,使用 MySQL 数据库而非 SQLite,所有服务器连接同一个数据库。
  3. 所有从服务器必须设置 NODE_TYPE 为 slave,不设置则默认为主服务器。
  4. 设置 SYNC_FREQUENCY 后服务器将定期从数据库同步配置,在使用远程数据库的情况下,推荐设置该项并启用 Redis,无论主从。
  5. 从服务器可以选择设置 FRONTEND_BASE_URL,以重定向页面请求到主服务器。
  6. 从服务器上分别装好 Redis,设置好 REDIS_CONN_STRING,这样可以做到在缓存未过期的情况下数据库零访问,可以减少延迟(Redis 集群或者哨兵模式的支持请参考环境变量说明)。
  7. 如果主服务器访问数据库延迟也比较高,则也需要启用 Redis,并设置 SYNC_FREQUENCY,以定期从数据库同步配置。

环境变量的具体使用方法详见此处。

宝塔部署教程

配置

系统本身开箱即用。

你可以通过设置环境变量或者命令行参数进行配置。

等到系统启动后,使用 root 用户登录系统并做进一步的配置。

[!NOTE] 如果你不知道某个配置项的含义,可以临时删掉值以看到进一步的提示文字。

使用方法

在渠道页面中添加你的 API Key,之后在令牌页面中新增访问令牌。

之后就可以使用你的令牌访问 One API 了,使用方式与 OpenAI API 一致。

你需要在各种用到 OpenAI API 的地方设置 API Base 为你的 One API 的部署地址,例如:https://openai.justsong.cn,API Key 则为你在 One API 中生成的令牌。

注意,具体的 API Base 的格式取决于你所使用的客户端。

例如对于 OpenAI 的官方库:

OPENAI_API_KEY="sk-xxxxxx"
OPENAI_API_BASE="https://<your-one-api-domain>:<port>/v1"
graph LR
A(用户)
A --->|使用 One API 分发的 key 进行请求| B(One API)
B -->|中继请求| C(OpenAI)
B -->|中继请求| D(Azure)
B -->|中继请求| E(其他 OpenAI API 格式下游渠道)
B -->|中继并修改请求体和返回体| F(非 OpenAI API 格式下游渠道)

可以通过在令牌后面添加渠道 ID 的方式指定使用哪一个渠道处理本次请求,例如:Authorization: Bearer ONE_API_KEY-CHANNEL_ID。 注意,需要是管理员用户创建的令牌才能指定渠道 ID。

不加的话将会使用负载均衡的方式使用多个渠道。

环境变量

One API 支持从 .env 文件中读取环境变量,请参照 .env.example 文件,使用时请将其重命名为 .env。

  1. REDIS_CONN_STRING:设置之后将使用 Redis 作为缓存使用。
  • 例子:REDIS_CONN_STRING=redis://default:redispw@localhost:49153
  • 如果数据库访问延迟很低,没有必要启用 Redis,启用后反而会出现数据滞后的问题。
  • 如果需要使用哨兵或者集群模式:
  • 则需要把该环境变量设置为节点列表,例如:localhost:49153,localhost:49154,localhost:49155。
  • 除此之外还需要设置以下环境变量:
  • REDIS_PASSWORD:Redis 集群或者哨兵模式下的密码设置。
  • REDIS_MASTER_NAME:Redis 哨兵模式下主节点的名称。
  1. SESSION_SECRET:设置之后将使用固定的会话密钥,这样系统重新启动后已登录用户的 cookie 将依旧有效。
  • 例子:SESSION_SECRET=random_string
  1. SQL_DSN:设置之后将使用指定数据库而非 SQLite,请使用 MySQL 或 PostgreSQL。
  • 例子:
  • MySQL:SQL_DSN=root:123456@tcp(localhost:3306)/oneapi
  • PostgreSQL:SQL_DSN=postgres://postgres:123456@localhost:5432/oneapi(适配中,欢迎反馈)
  • 注意需要提前建立数据库 oneapi,无需手动建表,程序将自动建表。
  • 如果使用本地数据库:部署命令可添加 --network="host" 以使得容器内的程序可以访问到宿主机上的 MySQL。
  • 如果使用云数据库:如果云服务器需要验证身份,需要在连接参数中添加 ?tls=skip-verify。
  • 请根据你的数据库配置修改下列参数(或者保持默认值):
  • SQL_MAX_IDLE_CONNS:最大空闲连接数,默认为 100。
  • SQL_MAX_OPEN_CONNS:最大打开连接数,默认为 1000。
  • 如果报错 Error 1040: Too many connections,请适当减小该值。
  • SQL_CONN_MAX_LIFETIME:连接的最大生命周期,默认为 60,单位分钟。
  1. LOG_SQL_DSN:设置之后将为 logs 表使用独立的数据库,请使用 MySQL 或 PostgreSQL。
  2. FRONTEND_BASE_URL:设置之后将重定向页面请求到指定的地址,仅限从服务器设置。
  • 例子:FRONTEND_BASE_URL=https://openai.justsong.cn
  1. MEMORY_CACHE_ENABLED:启用内存缓存,会导致用户额度的更新存在一定的延迟,可选值为 true 和 false,未设置则默认为 false。
  • 例子:MEMORY_CACHE_ENABLED=true
  1. SYNC_FREQUENCY:在启用缓存的情况下与数据库同步配置的频率,单位为秒,默认为 600 秒。
  • 例子:SYNC_FREQUENCY=60
  1. NODE_TYPE:设置之后将指定节点类型,可选值为 master 和 slave,未设置则默认为 master。
  • 例子:NODE_TYPE=slave
  1. CHANNEL_UPDATE_FREQUENCY:设置之后将定期更新渠道余额,单位为分钟,未设置则不进行更新。
  • 例子:CHANNEL_UPDATE_FREQUENCY=1440
  1. CHANNEL_TEST_FREQUENCY:设置之后将定期检查渠道,单位为分钟,未设置则不进行检查。
  • 例子:CHANNEL_TEST_FREQUENCY=1440
  1. POLLING_INTERVAL:批量更新渠道余额以及测试可用性时的请求间隔,单位为秒,默认无间隔。
  • 例子:POLLING_INTERVAL=5
  1. BATCH_UPDATE_ENABLED:启用数据库批量更新聚合,会导致用户额度的更新存在一定的延迟可选值为 true 和 false,未设置则默认为 false。
  • 例子:BATCH_UPDATE_ENABLED=true
  • 如果你遇到了数据库连接数过多的问题,可以尝试启用该选项。
  1. BATCH_UPDATE_INTERVAL=5:批量更新聚合的时间间隔,单位为秒,默认为 5。
  • 例子:BATCH_UPDATE_INTERVAL=5
  1. 请求频率限制:
  • GLOBAL_API_RATE_LIMIT:全局 API 速率限制(除中继请求外),单 ip 三分钟内的最大请求数,默认为 180。
  • GLOBAL_WEB_RATE_LIMIT:全局 Web 速率限制,单 ip 三分钟内的最大请求数,默认为 60。
  1. 编码器缓存设置:
  • TIKTOKEN_CACHE_DIR:默认程序启动时会联网下载一些通用的词元的编码,如:gpt-3.5-turbo,在一些网络环境不稳定,或者离线情况,可能会导致启动有问题,可以配置此目录缓存数据,可迁移到离线环境。
  • DATA_GYM_CACHE_DIR:目前该配置作用与 TIKTOKEN_CACHE_DIR 一致,但是优先级没有它高。
  1. RELAY_TIMEOUT:中继超时设置,单位为秒,默认不设置超时时间。
  2. RELAY_PROXY:设置后使用该代理来请求 API。
  3. USER_CONTENT_REQUEST_TIMEOUT:用户上传内容下载超时时间,单位为秒。
  4. USER_CONTENT_REQUEST_PROXY:设置后使用该代理来请求用户上传的内容,例如图片。
  5. SQLITE_BUSY_TIMEOUT:SQLite 锁等待超时设置,单位为毫秒,默认 3000。
  6. GEMINI_SAFETY_SETTING:Gemini 的安全设置,默认 BLOCK_NONE。
  7. GEMINI_VERSION:One API 所使用的 Gemini 版本,默认为 v1。
  8. THEME:系统的主题设置,默认为 default,具体可选值参考此处。
  9. ENABLE_METRIC:是否根据请求成功率禁用渠道,默认不开启,可选值为 true 和 false。
  10. METRIC_QUEUE_SIZE:请求成功率统计队列大小,默认为 10。
  11. METRIC_SUCCESS_RATE_THRESHOLD:请求成功率阈值,默认为 0.8。
  12. INITIAL_ROOT_TOKEN:如果设置了该值,则在系统首次启动时会自动创建一个值为该环境变量值的 root 用户令牌。
  13. INITIAL_ROOT_ACCESS_TOKEN:如果设置了该值,则在系统首次启动时会自动创建一个值为该环境变量的 root 用户创建系统管理令牌。
  14. ENFORCE_INCLUDE_USAGE:是否强制在 stream 模型下返回 usage,默认不开启,可选值为 true 和 false。
  15. TEST_PROMPT:测试模型时的用户 prompt,默认为 Print your model name exactly and do not output without any other text.。

命令行参数

  1. --port <port>: 指定服务器监听的端口号,默认为 3000。
  • 例子:--port 3000
  1. --log-dir <dir>: 指定日志文件夹,如果没有设置,默认保存至工作目录的 logs 文件夹下。
  • 例子:--log-dir ./logs
  1. --version: 打印系统版本号并退出。
  2. --help: 查看命令的使用帮助和参数说明。

演示

在线演示

注意,该演示站不提供对外服务:

截图展示

注意

本项目使用 MIT 协议进行开源,在此基础上,必须在页面底部保留署名以及指向本项目的链接。如果不想保留署名,必须首先获得授权。

同样适用于基于本项目的二开项目。

依据 MIT 协议,使用者需自行承担使用本项目的风险与责任,本开源项目开发者与此无关。

轩辕镜像配置手册

按平台快速找到配置文档

Docker

登录仓库拉取

登录认证 · 私有仓库

专属域名拉取

免登录 · 高速拉取

Linux

Docker 镜像配置

Windows / Mac

Docker Desktop 配置

MacOS OrbStack

OrbStack 容器

Docker Compose

Compose 项目配置

NAS

群晖

Synology 配置

飞牛

fnOS 镜像配置

绿联

绿联 NAS

威联通

QNAP 配置

极空间

极空间 NAS

企业仓库

其他仓库

ghcr · Quay · nvcr

Harbor 镜像源

Proxy Repository 对接

Portainer 镜像源

Registries 配置

Nexus 镜像源

Docker Proxy 缓存

开发工具

Dev Containers

VS Code 开发容器

Podman

Podman 配置指南

Singularity / Apptainer

HPC 科学计算容器

Kubernetes

K8s Containerd

Kubernetes · Containerd

K3s

轻量级集群

面板 / 网络

爱快路由

iKuai 镜像加速

宝塔面板

一键配置镜像源

AI

用 AI 使用轩辕镜像

agents.md · AI 对话 · 提示词

需要其他帮助?请查看我们的 常见问题 Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

功能

免费版与专业版区别

功能对比 · 版本选择

支持的镜像仓库

Docker Hub · GCR · GHCR

新手拉取配置

登录 · 专属域名 · 配置

docker search 限制

专属域名 · Hub 搜索

不支持 push

仅支持 pull · 不支持

拉取速度原因

带宽 · 缓存 · 冷热镜像

排错

402 与流量用尽

402 · 流量包 · 充值

401 认证失败

401 · docker login

manifest unknown

标签错误 · 镜像不存在

410 Gone 排查

410 · Docker 升级

429 限流

免费版 · 请求频率

DNS 超时

DNS 解析 · 网络超时

账号

失败是否计费

manifest · blob · 计费

申请开发票(企业 / 个人)

企业 · 个人 · 工单

修改登录密码

网站 · 仓库 · 重置

注销账户

工单 · 数据 · 注销

原理

mirrors 不生效

daemon.json · 重启

去掉域名前缀

docker tag · 重命名

指定架构拉取

ARM64 · AMD64 · 多架构

latest 与「最新」

digest · 版本号 · 标签

查看全部问题→

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
ghcr.io/songquanpeng/one-api
博客Docker 镜像公告与技术博客
热门查看热门 Docker 镜像推荐
教程轩辕镜像功能与使用教程
安装一键安装 Docker 并配置镜像源
官方公众号:源码跳动|官方技术交流群:13763429
官方公众号:源码跳动|官方技术交流群:|问题咨询请:提交工单
商务合作:点击复制邮箱
©2024-2026 源码跳动
商务合作:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.