Docker 版 Ollama 血泪记:从「一行命令」到「删盘放弃」的 6.5 小时

硬件:GTX 1650 4 GB
平台:Windows 宿主机 + VMware + CentOS 10 + Docker
时长:12:00 → 18:30(6.5 h)
结局:网卡蒸发,虚拟机报废,全盘重来
结论:旧显卡别在虚拟机里玩 GPU 透传,灾难级体验


一、被官网一行命令诱惑

Ollama 官网亮出大招:

docker run -d --gpus all -p 11434:11434 ollama/ollama

我心想:
「宿主机太吵,装个 CentOS 虚拟机,干净又高级!」
于是踏上了 6 小时的不归路。


二、踩坑时间线(按崩溃顺序)

阶段 耗时 关键事件
① 虚拟机准备 30 min VMware 17 + CentOS 10,勾选「透传 GPU」,宿主 GTX 1650 识别正常
② Docker 安装 20 min dnf install docker-ce 一路绿灯
③ NVIDIA Toolkit 40 min nvidia-container-toolkit,改配置,重启 Docker
④ 拉镜像 & 启动 10 min docker run --gpus all … 日志显示检测到 CUDA,心里美滋滋

三、灾难开始:网卡蒸发

⑤ 首次推理 → 黑屏死机

docker exec -it ollama ollama run deepseek-r1:7b

输入「你好」,瞬间 100 % CPU,VMware 提示强制关机。
重启后——

⑥ 网卡消失

ip a                      # 只剩 lo
lspci | grep -i eth       # 空

VMware 设备管理器里连网卡条目都不见了!

⑦ 抢救 2 小时:全失败

  • 重新添加网卡 → 不识别
  • .vmx → 无法保存
  • dracut / modprobe vmxnet3 → 无设备
    结论:虚拟硬件描述文件损坏,只能删盘重来。

四、根因复盘:PCIe 风暴冲垮虚拟桥

诱因 现象 结果
GPU 透传 + 7B 模型冷启动 瞬时 PCIe 流量 > 3 GB/s 虚拟桥掉线
CentOS 10 内核 6.8 VFIO bug 触发总线失联
Docker --gpus all 直通全部计算单元 宿主机 GPU 上下文切换失败
VMware 网卡模拟 依赖 PCIe 虚拟桥 桥设备掉线 → 网卡蒸发

一句话:旧卡 + 虚拟机 GPU 透传 + 大模型冷启动 = 灾难。


五、教训与建议

✅ 旧显卡正确姿势

  1. 宿主机原生装 Ollama(Windows 直接装)
  2. 不透传 GPU 给虚拟机
  3. 1.5 B 小模型常驻显存
  4. 内网穿透暴露端口,外部调用

❌ 别碰的组合

  • VMware / VirtualBox + --gpus all
  • CentOS Stream 最新内核
  • 7B 以上模型冷启动
  • Docker on VM(两层虚拟化,性能 + 兼容性双悬崖)

六、止损:21 分钟重来

救援 3 小时无果,30 秒删盘1 分钟新建虚拟机20 分钟装 CentOS 7——网卡健在,世界清净。

心理活动
「网卡都不认了,还救啥?删了重来,一杯咖啡搞定。」


七、6 小时换来的两行命令

【在人工智能的不断帮助下,终于通过在本地编译部署GPU实现了大模型自由】
详见
【大模型本地化踩坑实录】——从“CMake 找不到编译器”到“GPU 全速飞”——一张 GTX 1650 的逆袭

# 宿主机(5 分钟)
ollama pull deepseek-r1:1.5b
ollama run deepseek-r1:1.5b

# 穿透(1 分钟)
natapp -authtoken=xxx -localPort 11434

测速:本地 0.8 s,穿透 1.5 s——比 Docker on VM 快 10 倍,稳 100 倍,省 6 小时。


八、刻烟吸肺的总结

  1. 官网一行命令 ≠ 你的硬件适配
  2. 虚拟机 GPU 透传是高端玩法,旧卡慎入
  3. 磁盘空间是编译通行证,留 10 GB 再谈编译
  4. 失败日志比 Google 更准,pci-passthrough failed 直指元凶
  5. 适合自己的才是最好的——旧卡 + 小模型 + 原生系统,比 Docker 高大上更实用

后记:删除虚拟机那一刻,我悟了——
“不是 Docker 不好,是我硬件不配;不是官网骗我,是我没看警告。”
旧卡也能飞,但别让它飞在虚拟机上空。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐