fnOS安装Ollama教程(780M GPU加速,Vulkan版)
重要说明:为什么是Vulkan,不是ROCm
最初按ROCm方案部署(ollama/ollama:rocm镜像),表面上看起来能跑——第一次提问能正常回复,但第二次提问就报错unexpected EOF,容器日志显示:
HW Exception by GPU node-1 (Agent handle: 0x1df7f390) reason :GPU Hang
这是780M(RDNA3 iGPU)在ROCm上的已知问题——ROCm在集成显卡上调度容易触发GPU Hang,社区案例里反复出现,不是配置错误,是780M+ROCm这条路线本身不稳定。
解决方法是换成Vulkan后端,改用标准镜像ollama/ollama:latest,加上OLLAMA_VULKAN=1。Vulkan在780M上识别正常、连续多轮对话稳定,没有再出现Hang。
第一步:创建目录
mkdir -p /vol3/1000/docker/ollama/models
mkdir -p /vol3/1000/docker/ollama/webui
第二步:在Docker应用创建Compose项目
打开
Docker应用 → 左侧项目→新建项目项目名称:
ollama路径:
/vol3/1000/docker/ollama
第三步:Compose内容
services:
ollama:
image: ollama/ollama:latest
container_name: ollama
restart: unless-stopped
ports:
- "11434:11434"
volumes:
- /vol3/1000/docker/ollama/models:/root/.ollama
devices:
- /dev/dri
environment:
- OLLAMA_VULKAN=1
- OLLAMA_IGPU_ENABLE=1
group_add:
- "44"
- "105"
open-webui:
image: ghcr.io/open-webui/open-webui:main
container_name: open-webui
restart: unless-stopped
ports:
- "8081:8080"
environment:
- OLLAMA_BASE_URL=http://ollama:11434
#- HF_ENDPOINT=https://hf-mirror.com
volumes:
- /vol3/1000/docker/ollama/webui:/app/backend/data
depends_on:
- ollama
关键参数说明:
第四步:部署
cd /vol3/1000/docker/ollama
docker compose up -d
第五步:验证GPU是否被识别
docker logs ollama 2>&1 | grep -i -E "vulkan|gpu" | tail -5
正常输出应该包含:
msg="inference compute" id=0 ... library=Vulkan ... description="AMD Radeon 780M Graphics (RADV PHOENIX)" ... type=iGPU total="27.5 GiB" available="27.1 GiB"
如果看到的是dropping integrated GPU; to enable, set OLLAMA_IGPU_ENABLE=1,说明环境变量没生效——常见原因是Compose编辑后只是"重启"了容器,没有"重新创建"。解决方法:
docker compose down
docker compose up -d
第六步:拉取模型并测试
docker exec -it ollama ollama pull qwen2.5:14b
浏览器访问 http://192.168.0.188:8081,首次访问创建管理员账号(名称/邮箱随便填,本地服务不联网验证)。
进去后选择qwen2.5:14b模型,连续问几轮问题(重点是连续,第一轮正常不代表稳定),确认不会出现unexpected EOF。
第七步:验证显存占用
ls /sys/class/drm/ | grep card
确认显卡设备名(注意:BIOS调整显存设置后重启,设备编号可能从card1变成card0,每次重启后建议重新确认)。
提问时实时监控:
watch -n 1 cat /sys/class/drm/card0/device/mem_info_vram_used
14B模型加载后,这个数值应在7~8GB左右,说明模型确实跑在GPU上。
避坑汇总
最终验证结果
Vulkan识别780M:
total="27.5 GiB" available="27.1 GiB"qwen2.5:14b模型加载后显存占用:约7.5GB
连续多轮对话无报错,回复连贯流畅
另外:其他模型可以直接拉取测试:
bashdocker exec -it ollama ollama pull gemma4:12b
docker exec -it ollama ollama pull qwen3:14b
docker exec -it ollama ollama pull deepseek-r1:14b
docker exec -it ollama ollama pull llama3.1:8b删除指定模型:
查看已安装的模型列表:
docker exec -it ollama ollama list
删除指定模型:
docker exec -it ollama ollama rm 模型名:版本
比如:
docker exec -it ollama ollama rm gemma4:12b
docker exec -it ollama ollama rm qwen3:14b
删除后模型文件会从/vol3/1000/docker/ollama/models目录中移除,释放对应空间。
检查释放后的空间:
df -h /vol3
也可以在Open WebUI界面里操作——左下角设置里有模型管理界面,能直接点删除,不用命令行。
评论区