复制
nvidia-smi --query-gpu=compute_cap --format=csv
如果输出 < 7.0
,说明你的 GPU 不支持 Ollama 的 CUDA 版本,你可能需要使用 CPU 推理,或者换一张更高计算能力的 GPU(如 RTX 20 系列及以上)。
KEEP_GPUS_TIMEOUT: 40
TZ: Asia/Shanghai
Asia/Shanghai
(北京时间)。OLLAMA_ORIGINS: "*"
*
表示允许所有来源访问 Ollama API。1 | OLLAMA_ORIGINS: "http://example.com,https://example.com" |
Vue
或 React
)调用 Ollama。OLLAMA_HOST: "0.0.0.0"
0.0.0.0
表示监听所有 IP 地址。http://<服务器IP>:11434
)。1 | OLLAMA_HOST: "127.0.0.1" |
127.0.0.1
。CUDA_VISIBLE_DEVICES: 0
0
表示使用 第 1 块 GPU。CUDA_VISIBLE_DEVICES: 1
→ 只使用 第 2 块 GPU。CUDA_VISIBLE_DEVICES: 0,1
→ 使用 第 1 和 2 块 GPU。-1
,则 禁用 GPU,强制使用 CPU。OLLAMA_USE_CUDA: true
true
:如果检测到 NVIDIA GPU,Ollama 运行在 GPU 上(性能更快)。false
:即使有 GPU 也 强制使用 CPU(可能用于调试)。NVIDIA_DRIVER_CAPABILITIES=compute,utility
是一个环境变量,用于控制 Docker 容器内可用的 NVIDIA 驱动功能。
在 Docker 运行带 GPU 加速的容器时,这个变量确保容器可以使用必要的 GPU 计算能力。它的作用如下:
compute
**:启用 GPU 计算功能(用于 CUDA、TensorFlow、PyTorch 等)。utility
**:启用 NVIDIA 实用程序(如 nvidia-smi
)。变量 | 作用 | 影响 |
---|---|---|
KEEP_GPUS_TIMEOUT: 40 | GPU 资源保持时间 | 40 秒内无任务可能释放 GPU |
TZ: Asia/Shanghai | 设置时区 | 确保容器日志时间正确 |
OLLAMA_ORIGINS: "*" | 允许所有来源访问 API | 跨域访问,可能有安全风险 |
OLLAMA_HOST: "0.0.0.0" | 监听所有 IP | 允许外部访问 Ollama |
CUDA_VISIBLE_DEVICES: 0 | 选择 GPU | 0 代表使用第 1 块 GPU |
OLLAMA_USE_CUDA: true | 启用 GPU 加速 | true = 使用 CUDA,false = 仅 CPU |
如果你在 云服务器 上运行 Ollama,建议:
1 | OLLAMA_ORIGINS: "http://yourdomain.com" |
1 | OLLAMA_HOST: "127.0.0.1" |
1 | CUDA_VISIBLE_DEVICES: 0 |
你是想排查 Ollama 不使用 GPU 的问题吗?如果是,nvidia-smi
显示 无进程,说明 Ollama 仍然在 CPU 上跑,可能要进一步检查 Ollama 运行日志或 docker-compose
配置。🚀
1 | version: '3' |