宝塔Docker管理器一键部署AI中转网关
为什么你需要一个AI中转网关
平时调用ChatGPT、Claude等AI接口,常常需要管理多个API Key和不同厂商的计费模式。
一个AI中转网关(比如流行的 One API)能帮你统一管理渠道、分配令牌、记录用量,甚至提供负载均衡。
用宝塔面板自带的 Docker管理器 来部署,点几下鼠标就能完成,不用记复杂的命令。
本文适合:刚接触服务器、想快速拥有一个私有AI中转服务的新手。
最终结果:浏览器打开你服务器的 3000 端口就能看到管理界面,添加渠道后就能用自定义域名或IP调用。
部署前需要准备什么
- 一台安装了 宝塔面板(9.x 版本均可)的云服务器,系统推荐 CentOS 7+ 或 Ubuntu 20+。
- 在宝塔后台的 软件商店 里搜索并安装 Docker管理器(如果还没装)。安装成功后左侧会多出“Docker”菜单。
- 一个域名(可选),如果你想让网关通过域名访问并配上HTTPS。
打开宝塔Docker管理器开始部署
- 登录宝塔面板,点击左侧 Docker → 容器 → 添加容器。
- 在镜像名称里输入
justsong/one-api(这是 One API 的官方镜像)。宝塔会自动拉取,等待几秒。 - 填写容器名称,比如
one-api。 - 端口映射:点击“添加端口映射”,容器端口填
3000,服务器端口建议也填3000(如果3000没被占用)。如果要用其他端口,记住后面访问时改端口号。 - 存储卷(可选但推荐):在“目录映射”里添加一个宿主机目录,比如
/www/one-api/data映射到容器内的/data,这样数据不会因为容器删除而丢失。 - 其他设置保持默认,点击“提交”。瞬间容器就运行起来了。
小提示:如果拉取镜像很慢,可以先在宝塔Docker管理器里设置国内镜像源(如阿里云加速器),再拉取。
新手最容易踩的坑
- 端口被占用:如果服务器上已有Nginx或其它服务占用了3000端口,宝塔会报错。这时换成其他端口,比如3001,同时记得在宝塔 安全 里放行该端口。
- 访问不了:先检查服务器防火墙和安全组是否放行了对应端口(云服务商控制台也要检查)。本地用
curl http://你的IP:3000测试,或直接在浏览器访问。 - 数据丢失:很多人重启容器后发现配置没了,因为没挂载存储卷。强烈建议创建容器时就指定
/data目录映射。 - 镜像版本:
justsong/one-api的 latest 标签可能不稳定,建议在镜像名后面加版本号,如justsong/one-api:0.6.6(当前稳定版)。具体版本可去 Docker Hub 查看。
部署完成后如何验证
- 在浏览器里访问
http://你的服务器IP:3000,应该能打开 One API 的登录页。 - 默认管理员账号
root,密码123456,登录后立即修改密码。 - 添加一个AI渠道(比如 OpenAI),填入 API Key,保存。
- 创建一个令牌(Token),就可以用这个令牌来调用网关地址了。
- 在终端或本地用 curl 快速测试:
curl http://你的IP:3000/v1/chat/completions \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 你的令牌" \
-d '{"model": "gpt-3.5-turbo", "messages": [{"role": "user", "content": "Hello"}]}'
如果返回正常的 JSON 结果,说明部署成功。
总结与扩展
现在你已经拥有了一个私有的AI中转网关,可以把你所有的AI API Key统一管理,还能在团队中分发不同额度的令牌。
如果希望绑定域名并启用HTTPS,可以在宝塔网站中添加反向代理,目标URL填 http://127.0.0.1:3000,然后申请SSL证书即可。
实际使用中,建议定期备份 /data 目录下的数据库文件,防止意外丢失。
遇到其他问题,可以查看容器的运行日志(宝塔Docker管理器 → 容器 → 日志)。
如果你还想了解更多宝塔Docker管理器的用法,比如部署其他常用服务,可以继续阅读本站相关教程。