NAS飞牛N1部署NewAPI对接Ollama本地大模型

引言

很多NAS用户希望利用飞牛N1的闲置算力跑本地大模型,但不知道如何把模型暴露成标准的API接口。
本文介绍在飞牛N1上通过Docker部署NewAPI,并让它对接Ollama中已下载的模型,最终得到一个兼容OpenAI格式的本地API服务。
读完本文,你将能在局域网内通过API调用本地大模型,用于开发、测试或接入智能应用。

准备工作

检查系统环境

  • 飞牛N1已安装飞牛OS(基于Debian/Ubuntu),并开启SSH或拥有终端权限。
  • 确保磁盘空间充足,建议至少20GB剩余,用于存放Ollama模型和容器镜像。
  • 确保网络通畅,能访问Docker Hub等镜像仓库(如果使用代理,请提前配置docker代理)。

安装Docker

如果没有安装Docker,通过以下命令安装(以飞牛OS为例):

sudo apt update
sudo apt install docker.io -y
sudo systemctl enable --now docker

安装后验证:docker --versiondocker ps 不报错即可。

第一步:部署Ollama并拉取模型

Ollama是本地大模型运行框架,通过Docker部署很方便:

sudo docker run -d --gpus all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
注意:如果飞牛N1没有NVIDIA显卡(比如是CPU版本),请去掉 --gpus all,直接:
sudo docker run -d -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama

拉取一个模型(以qwen2:0.5b为例,轻量可跑):

sudo docker exec -it ollama ollama pull qwen2:0.5b

下载完成后,测试本地调用:

curl http://localhost:11434/api/generate -d '{"model": "qwen2:0.5b", "prompt": "你好"}'

如果返回带文本的JSON,说明Ollama正常。

第二步:部署NewAPI

NewAPI是一个开源API网关,支持对接Ollama、OpenAI、Claude等多种后端。
我们用Docker部署:

sudo docker run -d -p 3000:3000 --name new-api \
  -e TZ=Asia/Shanghai \
  -e REDIS_CONN_STRING=redis://localhost:6379/0 \
  -e SESSION_SECRET=your_random_secret \
  -e SQL_DSN="root:password@tcp(localhost:3306)/new_api?charset=utf8mb4&parseTime=True&loc=Local" \
  -v /etc/new-api:/etc/new-api \
  --restart always \
  songquanpeng/one-api
需要先准备MySQL和Redis?其实NewAPI支持SQLite,省去额外数据库。更简单的部署方案是使用SQLite模式:
sudo docker run -d --name new-api \
  -p 3000:3000 \
  -e TZ=Asia/Shanghai \
  -e SESSION_SECRET=change_this_secret \
  -v new-api-data:/data \
  --restart always \
  songquanpeng/one-api

这样会使用SQLite数据库,无需额外服务。
启动后访问 http://飞牛N1的IP:3000,默认用户名 root,密码 123456(请立即修改)。

第三步:配置NewAPI对接Ollama

  1. 登录后台,点击“渠道” -> “添加渠道”。
  2. 类型选择 Ollama
  3. 名称随便填(如“本地Ollama”)。
  4. 地址填写 http://host.docker.internal:11434(因为容器内访问宿主机Ollama时用host.docker.internal,如果Ollama也在Docker中,但注意:Ollama容器暴露端口到宿主机,所以使用宿主机IP也可以,例如 http://192.168.1.x:11434)。
  5. 模型列表填写你已拉取的模型名,多个用逗号分隔,例如 qwen2:0.5b
  6. 其他保持默认,保存。

现在回到“令牌”页面,创建一个新的令牌(API Key),选择刚才添加的渠道(或所有渠道),生成密钥。

效果验证

用curl测试NewAPI是否正常代理到Ollama:

curl http://飞牛N1的IP:3000/v1/chat/completions \
  -H "Authorization: Bearer 你的令牌" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "qwen2:0.5b",
    "messages": [{"role": "user", "content": "Hello"}]
  }'

如果返回类似OpenAI的响应,说明对接成功。

避坑指南

  • Ollama容器找不到:确保Ollama容器名称正确,或者在同一个docker网络里。可以用 docker network create ai-net 将两个容器都加入,然后用容器名通信。
  • 内存不足:小模型(如0.5B)通常2GB内存可跑,若频繁OOM,可换更小模型(如tinyllama)。
  • 端口冲突:将宿主机端口3000改为其他端口(如3001),避免与已有服务冲突。
  • NewAPI后台报连接失败:检查Ollama地址是否可通:在NewAPI容器内 curl http://host.docker.internal:11434。若不行,改用局域网IP。

高频问题解答

Q:NewAPI支持流式输出吗?
A:支持,只要Ollama本身支持流式,NewAPI默认开启流式。

Q:如何添加更多模型?
A:先在Ollama中pull新模型(如 docker exec -it ollama ollama pull llama3.2),然后在NewAPI后台编辑渠道,在“模型列表”中追加模型名,保存即可。

Q:如何在局域网其他设备调用?
A:确保飞牛N1防火墙允许3000端口,其他设备用 http://飞牛N1的内网IP:3000 即可调用。

总结

通过以上四步,你已在飞牛N1上实现了NewAPI对接Ollama的本地大模型API服务。
下面可以根据需要调整模型大小、配置密钥权限,或者将NewAPI接入到你的应用、聊天前端中。
遇到问题优先回看避坑部分,确保每一步都正确执行。

分享到:
上一篇
Ollama v0.31新版本安全配置避坑完整教程
下一篇
自建AI中转站sub2api轻量网关Docker一键部署
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意