🚀 OpenClaw Docker+Minimax部署完全指南:踩坑记录与解决方案

🚀 OpenClaw Docker 部署完全指南:踩坑记录与解决方案

一句话总结:花了 8 小时踩了 6 个坑,整理出这份保姆级 Docker 部署指南,助你 30 分钟搞定 OpenClaw + MiniMax 接入。


📋 目录


🎯 效果预览

部署成功后访问 http://localhost:18790,即可看到 OpenClaw Dashboard:

![Dashboard 界面]

可以看到已连接的 Agent 和完整的控制面板。


✅ 前置检查清单

开始之前,确保:

检查项 命令 预期结果
Docker 版本 docker --version v20.10+
磁盘空间 - 至少 8GB 可用
网络连接 - 可访问 ghcr.io
端口占用 `netstat -ano findstr :18790`

📦 详细部署步骤

步骤 1:创建工作目录

powershell 复制代码
mkdir -Force "$env:USERPROFILE\OpenClawWorkspace\workspace"
mkdir -Force "$env:USERPROFILE\OpenClawWorkspace\openclaw-config"

步骤 2:创建配置文件

openclaw-config 目录创建 openclaw.json

json 复制代码
{
  "commands": {
    "native": "auto",
    "nativeSkills": "auto",
    "restart": true,
    "ownerDisplay": "raw"
  },
  "gateway": {
    "bind": "lan",
    "controlUi": {
      "allowedOrigins": [
        "http://localhost:18789",
        "http://127.0.0.1:18789",
        "http://localhost:18790",
        "http://127.0.0.1:18790"
      ]
    },
    "auth": {
      "mode": "token",
      "token": "docker-token-18790"
    }
  },
  "models": {
    "mode": "merge",
    "providers": {
      "minimax": {
        "baseUrl": "https://api.minimax.chat/v1",
        "apiKey": "YOUR_MINIMAX_API_KEY_HERE",
        "api": "openai-completions",
        "models": [
          {
            "id": "MiniMax-Text-01",
            "name": "MiniMax Text 01",
            "contextWindow": 16384,
            "maxTokens": 8192
          }
        ]
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "minimax/MiniMax-Text-01"
      }
    }
  }
}

⚠️ 重要models 字段必须是数组 [] 格式,不是对象 {}

步骤 3:拉取镜像并启动

powershell 复制代码
# 拉取镜像
docker pull ghcr.io/openclaw/openclaw:latest

# 创建网络
docker network create openclaw-net 2>$null

# 启动容器
docker run -d `
  --name openclaw-docker `
  --network openclaw-net `
  -p "18790:18789" `
  -v "$env:USERPROFILE\OpenClawWorkspace\workspace:/workspace:rw" `
  -v "$env:USERPROFILE\OpenClawWorkspace\openclaw-config:/home/node/.openclaw:rw" `
  ghcr.io/openclaw/openclaw:latest

步骤 4:访问 Dashboard

浏览器打开 http://localhost:18790,开始使用!


🔧 问题诊断与解决

❌ 问题 1:Docker 代理导致无法拉取镜像

症状

vbnet 复制代码
Error response from daemon: Get "https://ghcr.io/v2/": ... proxyconnect tcp: dial tcp: lookup http.docker.internal: no such host

解决: ![Docker 代理配置界面]

Settings → Resources → Proxies → 关闭 Manual proxy configuration


❌ 问题 2:端口被占用

症状:容器启动失败或无法访问

解决

powershell 复制代码
# 查找占用进程
netstat -ano | findstr ":18789"

# 改用其他端口,如 18790
-p "18790:18789"

❌ 问题 3:无法配对设备(PAIRING_REQUIRED)

症状: ![设备配对提示]

解决

powershell 复制代码
# 查看配对请求
docker logs openclaw-docker | findstr "pairing"

# 批准配对(替换 <requestId> 为实际 ID)
docker exec -it openclaw-docker npx openclaw devices approve <requestId>

❌ 问题 4:跨域错误(CORS)

症状: ![跨域错误]

解决 :在 openclaw.json 中添加 allowedOrigins

json 复制代码
"controlUi": {
  "allowedOrigins": [
    "http://localhost:18789",
    "http://127.0.0.1:18789",
    "http://localhost:18790",
    "http://127.0.0.1:18790"
  ]
}

重启容器生效:

powershell 复制代码
docker restart openclaw-docker

❌ 问题 5:MiniMax 模型配置格式错误

症状:容器启动失败,日志显示:

c 复制代码
models.providers.minimax.models: Invalid input: expected array, received undefined

解决 :确保 models 是数组格式:

json 复制代码
"models": [
  {
    "id": "MiniMax-Text-01",
    "name": "MiniMax Text 01",
    "contextWindow": 16384,
    "maxTokens": 8192
  }
]

不是:

json 复制代码
"models": {  // ❌ 错误!
  "id": "..."
}

❌ 问题 6:配置文件修改后不生效

解决

powershell 复制代码
# 重启容器
docker restart openclaw-docker

# 或查看实时日志
docker logs -f openclaw-docker

⚡ 一键部署脚本

保存为 deploy.ps1,右键"使用 PowerShell 运行":

powershell 复制代码
param(
    [string]$Port = "18790",
    [string]$ApiKey = ""
)

Write-Host "🚀 OpenClaw Docker 一键部署" -ForegroundColor Cyan

# 创建目录
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\OpenClawWorkspace\openclaw-config" | Out-Null

# 生成配置
$config = @"
{
  "gateway": {
    "bind": "lan",
    "controlUi": { "allowedOrigins": ["http://localhost:$Port"] },
    "auth": { "mode": "token", "token": "docker-token-$Port" }
  },
  "models": {
    "providers": {
      "minimax": {
        "baseUrl": "https://api.minimax.chat/v1",
        "apiKey": "$ApiKey",
        "api": "openai-completions",
        "models": [{"id":"MiniMax-Text-01","name":"MiniMax"}]
      }
    }
  }
}
"@

$config | Out-File "$env:USERPROFILE\OpenClawWorkspace\openclaw-config\openclaw.json"

# 启动容器
docker run -d --name openclaw-docker -p "${Port}:18789" `
  -v "$env:USERPROFILE\OpenClawWorkspace\openclaw-config:/home/node/.openclaw:rw" `
  ghcr.io/openclaw/openclaw:latest

Write-Host "✅ 部署成功!访问 http://localhost:$Port" -ForegroundColor Green

📝 常用命令参考

powershell 复制代码
# 查看日志
docker logs openclaw-docker
docker logs -f openclaw-docker  # 实时跟踪

# 重启容器
docker restart openclaw-docker

# 进入容器终端
docker exec -it openclaw-docker bash

# 停止并删除容器
docker stop openclaw-docker
docker rm openclaw-docker

# 查看配对请求
docker exec openclaw-docker npx openclaw devices list

🏗️ 架构图

graph TB A[Windows宿主机] --> B[Docker Desktop] B --> C[openclaw-docker容器] C --> D[Gateway:18789] C --> E[配置目录
openclaw.json] C --> F[工作空间
workspace] D --> G[MiniMax API] D --> H[Dashboard UI
localhost:18790] style A fill:#f9f,stroke:#333 style B fill:#bbf,stroke:#333 style C fill:#bfb,stroke:#333 style G fill:#ff9,stroke:#333

📌 总结

项目 内容
部署难度 ⭐⭐⭐ 中等
主要坑点 代理、端口、配对、跨域、配置格式
推荐配置 bind: lan + allowedOrigins + 数组格式 models
后续扩展 可接入 OpenAI、Claude、本地模型等

希望这份指南能帮到你!有问题欢迎在评论区交流 👇


参考链接

#OpenClaw #Docker #AIAgent #MiniMax #部署教程 #开源项目

相关推荐
无盐海2 小时前
Linux vi 命令 Docker命令
linux·docker
杨浦老苏4 小时前
零人类公司编排框架Paperclip的安装
人工智能·docker·ai·群晖
L-影4 小时前
部署本地Dify过程,使用Dify的前期准备
人工智能·docker·ai·dify
Hi202402177 小时前
AI编程助手Claude Code、Codex、OpenCode一站式Docker环境
docker·容器·ai编程
minstbe7 小时前
IC设计私有化AI助手实战:基于Docker+OpenCode+Ollama的数字前端综合增强方案(基础版)
前端·人工智能·docker
Keanu-7 小时前
【无标题】
docker·云原生
火车叼位9 小时前
Docker 全量备份恢复实战:可离线、可迁移、可复原的标准方案
运维·docker
geek_Chen019 小时前
轻量级虚拟机--Docker使用手册
docker·容器
奋斗的蛋黄10 小时前
Docker 核心知识点
运维·docker·容器