openclaw配置本地模型最常卡在base url填错、端口不通或容器网络隔离三处;必须用host.docker.internal替代localhost,确保ollama监听0.0.0.0:11434,并在docker启动时同时注入--add-host和llm_base_url环境变量。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

OpenClaw配置本地模型时,最常卡在模型地址填错、端口不通或容器网络隔离导致请求失败这三处,必须严格按容器内可访问路径填写Base URL,否则AI代理根本收不到响应。
确认本地模型服务已就绪
先验证Ollama是否真正运行且模型已加载:执行 ollama list,确保目标模型(如 deepseek-coder:6.7b)状态为 created;再运行 curl http://localhost:11434/api/tags,返回JSON中包含该模型才代表服务可用。
若返回空或连接拒绝,说明Ollama没启动或监听地址不是默认的11434端口——【Ollama必须监听0.0.0.0:11434,不能只绑127.0.0.1】,否则Docker容器内部无法访问。
启动OpenClaw容器时注入正确网络参数
用以下命令启动OpenClaw,关键在于 --add-host host.docker.internal:host-gateway 和 -e LLM_BASE_URL=http://host.docker.internal:11434 必须同时存在:
docker run -it --rm --pull=always -e LLM_BASE_URL=http://host.docker.internal:11434 -e LLM_MODEL_NAME=ollama/deepseek-coder:6.7b -v /var/run/docker.sock:/var/run/docker.sock -p 3000:3000 --add-host host.docker.internal:host-gateway --name openclaw-app docker.all-hands.dev/all-hands-ai/openclaw:latest
这里不能用 localhost 或 127.0.0.1 替代 host.docker.internal,因为容器内 localhost 指向自身,不是宿主机。
Web UI中二次校验与保存
浏览器打开 http://localhost:3000 后,点击右上角齿轮图标进入设置页:
① Provider 选择 “Ollama”;
② Model Name 填写完整标识符,例如 ollama/deepseek-coder:6.7b(注意前缀 ollama/ 不可省略);
③ Base URL 必须与容器启动时环境变量一致,即 http://host.docker.internal:11434;
④ 点击 Save,页面不报错且底部状态栏显示 “Connected to Ollama” 即生效。
如果保存后立即弹出 “Failed to connect to LLM”,说明 Base URL 仍不可达——此时不要反复重试,先回到终端执行 docker exec -it openclaw-app curl -v http://host.docker.internal:11434/api/health,确认容器内能否通达宿主机Ollama服务。










