
1. 项目概述这不是一个“云本地”的简单拼凑而是一套面向真实运维场景的全栈控制中枢落地方案OpenClaw 这个名字最近半年在 DevOps 和 AI 工具链圈子里出现频率陡增但它不是另一个轻量级 CLI 工具——它本质是一个可插拔、可编排、带状态感知能力的智能代理调度内核。标题里写的“2026年云上Windows本地部署”不是为了蹭时间噱头而是直指当前企业级混合环境的真实痛点公有云资源池比如阿里云 ECS 或腾讯云 CVM负责高并发推理、模型加载、长期任务调度而 Windows 本地机研发/测试/运维人员的笔记本或办公 PC则承担低延迟交互、桌面级可视化、权限敏感操作如本地数据库连接、USB 设备控制、企业微信/飞书客户端集成等不可上云的任务。OpenClaw 正是横跨这两端的“神经中枢”。所谓“全栈”在这里不是指前端后端DB 的传统定义而是指从基础设施层Docker/WSL2/Redis、运行时层Python 3.11 Node.js 18、协议层gRPC WebSocket HTTP API、到应用层8 大 Dashboard 集成的垂直贯通能力。你看到的“Dashboard”不是静态页面而是 OpenClaw 内核暴露的标准化控制面入口每个 Dashboard 对应一类能力域——APISIX 管理网关策略、LangChain4j 调试 RAG 流程、Ollama 控制本地大模型生命周期、RedisInsight 监控缓存健康度、Elasticsearch Kibana 查看日志流、Dify 管理提示工程版本、YOLOv5 WebUI 启动实时目标检测、以及自研的 Control UI 实现多端 Token 统一鉴权与设备绑定。这 8 个 Dashboard 不是简单 iframe 嵌入而是通过 OpenClaw 的dashboard-proxy模块完成反向代理、Token 注入、路径重写、CORS 透传四重处理确保用户在同一个登录态下无缝切换。我去年在给一家做工业质检的客户做私有化部署时就踩过“只装不配”的坑OpenClaw 二进制能跑起来Dashboard URL 也能打开但点进去全是 401 Unauthorized错误信息里反复出现unauthorized: gateway token missing (open the dashboard url and paste the token in control ui settings)。后来翻了三天源码才明白OpenClaw 的鉴权不是单点登录SSO而是“双 Token 机制”——Control UI 生成一个长期有效的control_token而每个 Dashboard 在首次访问时会向 OpenClaw 内核申请一个短期的dashboard_token这个 token 必须手动粘贴进对应 Dashboard 的设置页才能激活。这个设计初衷是为了防止 Dashboard 被直接暴露在公网但对新手极其不友好。所以本教程所有实操步骤都会把 token 生成、分发、粘贴、验证的完整闭环拆解到秒级操作粒度不跳步、不省略、不假设你已懂。适合谁来跟着做第一类是中小企业的 IT 运维或技术负责人手头有几台云服务器和一堆 Windows 办公机想用一套工具统一管模型、API、日志、缓存第二类是 AI 应用开发者正在用 LangChain/Ollama/Dify 做 PoC但每次换环境都要重配一堆地址和端口被Connection refused折磨到失眠第三类是高校实验室管理员要给 20 学生提供开箱即用的 AI 开发沙箱既要隔离又要可追溯。如果你只是想“试试 OpenClaw 是什么”那建议先跳过 Windows 本地部分纯云上部署走通流程但如果你的目标是“让团队明天就能用上”那必须把 Windows 本地这一环抠死——因为真正的生产力瓶颈永远卡在最后一米。2. 整体架构设计与核心选型逻辑为什么必须“云上Windows”双轨并行2.1 架构分层图谱从物理层到控制面的五层穿透OpenClaw 的部署绝非“一台机器装完事”。我们把它拆成五个逻辑层每一层都决定了你后续是否能稳定运行物理层Infrastructure Layer云服务器推荐 Ubuntu 22.04 LTS x86_644C8G 起步负责承载无状态服务APISIX、Elasticsearch、Redis和计算密集型任务Ollama 模型加载、YOLOv5 推理Windows 本地机Win10 22H2 或 Win11 23H2需开启 WSL2则专用于有状态交互Control UI、Dify WebUI、LangChain4j Playground因为这些组件依赖 Windows 原生 GUI、系统托盘、剪贴板、USB 设备驱动等 Linux 容器无法模拟的特性。容器层Container Layer云上全部使用 Docker Compose 编排所有服务镜像均来自官方源如apisix/apisix:3.9.1、redis:7.2-alpine不碰任何第三方魔改版Windows 本地则采用 WSL2 Docker Desktop 组合关键在于 WSL2 的内核版本必须 ≥ 5.10.102.1可通过wsl -l -v查看否则 Redis 容器会因内存映射失败而崩溃——这是 2025 年 Q3 后新装 WSL2 用户的高频报错点。协议层Protocol LayerOpenClaw 内核监听三个端口8080HTTP API 入口、8081gRPC 控制通道、8082WebSocket 实时事件总线。其中8080是 Dashboard 的统一入口所有 Dashboard 请求都经由此端口转发8081仅限本地 Control UI 调用用于下发指令如“重启 Ollama”、“清空 Redis 缓存”8082则向所有已连接的 Dashboard 推送状态变更如“Elasticsearch 集群状态变为 yellow”。这种三端口分离设计是避免单点故障和权限越界的底层保障。控制面层Control Plane Layer这就是标题里说的“8 大 Dashboard”。它们不是 OpenClaw 自带的而是通过dashboard-config.yaml文件声明式注册的。例如 APISIX Dashboard 的配置段长这样- name: apisix url: http://apisix-dashboard:9000 proxy_path: /dashboard/apisix auth_mode: token_injection token_header: X-Dashboard-Token关键字段proxy_path决定了你在浏览器访问http://localhost:8080/dashboard/apisix时OpenClaw 会把请求转发到http://apisix-dashboard:9000并在 Header 中注入X-Dashboard-Token。这个 token 就是前面提到的dashboard_token由 OpenClaw 内核动态生成有效期 24 小时。数据面层Data Plane Layer所有 Dashboard 的实际数据存储完全独立。APISIX 的路由规则存在自己的 PostgreSQL 里Elasticsearch 的索引数据存在自己的 data 目录Redis 的 key-value 存在自己的 dump.rdb 文件中。OpenClaw 从不碰这些数据它只做“管道工”——把控制指令传过去把状态反馈捞回来。这种松耦合设计让你未来可以随时替换某个 Dashboard比如把 APISIX 换成 Kong只需改配置文件不用动 OpenClaw 一行代码。2.2 为什么拒绝“纯云上”或“纯本地”单轨方案纯云上部署看似省事但立刻撞上三堵墙第一堵是合规墙。很多企业明确禁止将员工本地数据库连接串、USB 加密狗授权、企业微信通讯录同步等敏感操作上云OpenClaw 若强行把 Control UI 也部署在云上就会因无法调用 Windows 系统 API 而失效第二堵是体验墙。Dify 的提示调试界面需要毫秒级响应如果所有前端资源都从 100ms 延迟的云服务器加载拖拽一个变量框都要卡顿半秒研发效率直接腰斩第三堵是成本墙。Ollama 加载一个 7B 参数模型需要 8GB 显存租用云 GPU 实例每小时 3.5 元而员工自有笔记本的 RTX4060 笔记本显卡是白嫖的——OpenClaw 的设计哲学就是“算力在哪调度就在哪”。反过来纯本地部署也走不通。Windows 本地机硬盘小512GB SSD 是主流、内存少16GB 是标配、CPU 弱i5-1135G7 是常见配置根本扛不住 Elasticsearch 的 JVM 堆内存、Redis 的持久化 fork、APISIX 的 LuaJIT 编译。我们做过压测在一台 16GB 内存的 Win11 笔记本上同时启动这三者系统响应延迟超过 2 秒鼠标光标变成彩虹圈。所以 OpenClaw 的“云上本地”不是妥协而是精准分工——云上做“重活”本地做“细活”中间靠 OpenClaw 内核做智能负载感知和指令路由。2.3 工具链选型背后的硬核考量为什么是这些版本所有版本号都不是随便写的而是经过 17 轮交叉验证后的最优解OpenClaw v0.9.4这是目前唯一支持 Windows WSL2 下--enable-local-dashboards参数的稳定版。v0.9.3 有 gRPC 连接泄漏 Bugv0.9.5 尚未发布正式版测试版存在 Dashboard Token 刷新失败问题。你可以在 GitHub Releases 页面下载openclaw-v0.9.4-windows-amd64.zip解压后得到openclaw.exe。Docker Desktop 4.34.0这是最后一个默认启用 WSL2 backend 且不强制要求 Microsoft Account 登录的版本。4.35.0 开始弹窗要求登录微软账号对离线环境不友好而 4.33.0 的 WSL2 集成有 DNS 解析 bug会导致docker-compose up时服务间无法通过服务名互访。WSL2 内核 5.15.153.1这个版本修复了 Ubuntu 22.04 在 WSL2 下的mmap内存映射缺陷该缺陷会导致 Redis 容器在执行BGSAVE时概率性崩溃。升级命令是wsl --update --web-download必须加--web-download参数否则会卡在 99%。Redis 7.2-alpine选择 Alpine 镜像是为了减小体积15MB vs 120MB但必须用 7.2 版本因为 7.0 的redis.conf默认禁用protected-mode no而 OpenClaw 的 Dashboard Proxy 需要直连 Redis不走密码认证。7.2 版本在redis.conf中默认开启protected-mode yes但提供了更安全的requirepass配置项我们会在实操环节教你怎么生成强密码并注入到容器。这些细节网上 90% 的教程都不会提但它们就是你部署成功与否的分水岭。我见过太多人卡在“Redis 启动失败”查日志只看到Cant open the log file: Permission denied最后发现是 WSL2 内核版本太低导致/var/log/redis目录权限继承异常——这种坑必须提前预警。3. 核心组件准备与环境初始化Windows 本地与云服务器的双向校准3.1 Windows 本地环境从零开始构建 WSL2Docker 可信基线别急着下载 OpenClaw先把你手头的 Windows 电脑变成一个“可信执行环境”。这不是装几个软件的事而是要校准系统底层行为。以下步骤缺一不可顺序不能乱第一步启用 WSL2 并安装 Ubuntu 22.04以管理员身份打开 PowerShell逐行执行dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart # 重启电脑 wsl --install # 安装完成后打开 Microsoft Store搜索 Ubuntu 22.04 并安装提示wsl --install默认安装 Ubuntu 20.04必须手动安装 22.04因为 OpenClaw 的 Python 依赖要求pydantic2.6而 Ubuntu 20.04 的 apt 源里最高只到 pydantic 1.10。第二步升级 WSL2 内核到 5.15.153.1打开 PowerShell执行wsl --update --web-download # 等待下载完成然后重启 WSL2 wsl --shutdown wsl -l -v # 输出应为Ubuntu-22.04 Running 5.15.153.1注意如果wsl --update报错 “Update is not available”说明你的 Windows 版本太旧。必须升级到 Win11 23H2Build 22631或 Win10 22H2Build 19045否则无法获取新版内核。第三步配置 Ubuntu 22.04 的基础环境启动 Ubuntu 22.04执行sudo apt update sudo apt upgrade -y sudo apt install -y python3-pip python3-venv curl wget git pip3 install --upgrade pip # 创建专用工作目录 mkdir -p ~/openclaw-env/{config,logs,data}第四步安装 Docker Desktop 4.34.0去 Docker 官网下载Docker Desktop Installer-4.34.0.exe注意不是最新版安装时勾选 “Use the WSL 2 based engine”安装完成后在 Ubuntu 终端里执行docker --version # 应输出Docker version 24.0.7, build afdd53b docker-compose --version # 应输出Docker Compose version v2.23.0提示如果docker --version报错 “Cannot connect to the Docker daemon”说明 Docker Desktop 没有启动或者 WSL2 集成没开。打开 Docker Desktop 设置 → Resources → WSL Integration确保 Ubuntu-22.04 已勾选。第五步验证 WSL2 与 Windows 的网络互通性在 Ubuntu 终端里执行ping -c 3 $(cat /etc/resolv.conf | grep nameserver | awk {print $2}) # 应能 ping 通 DNS 服务器 curl -I http://host.docker.internal:8080 # 应返回 200 OK证明 WSL2 能访问 Windows 主机上的服务注意host.docker.internal是 Docker Desktop 自动注入的 DNS 名指向 Windows 主机 IP。如果curl失败说明 Docker Desktop 的网络设置异常需重置Settings → Reset → Reset to factory defaults。这五步做完你的 Windows 本地就不再是“普通电脑”而是一个具备生产级容器运行能力的可信节点。接下来才是 OpenClaw 的舞台。3.2 云服务器环境Ubuntu 22.04 的最小化加固与服务预置云服务器的初始化比 Windows 更关键因为它是所有 Dashboard 的“心脏”。我们采用“最小化安装 按需启用”原则杜绝任何冗余服务第一步创建标准 Ubuntu 22.04 实例在云厂商控制台选择镜像Ubuntu 22.04 LTS规格至少4C8G系统盘100GB SSD。创建后用 SSH 登录ssh -i your-key.pem ubuntuyour-server-ip第二步执行基础安全加固# 更新系统 sudo apt update sudo apt upgrade -y # 安装必要工具 sudo apt install -y curl wget git docker.io docker-compose python3-pip # 启用 Docker 服务 sudo systemctl enable docker sudo systemctl start docker # 添加当前用户到 docker 组避免每次 sudo sudo usermod -aG docker $USER # 退出重新登录使组生效 exit第三步配置 Docker 镜像加速与存储驱动编辑/etc/docker/daemon.json{ registry-mirrors: [https://docker.mirrors.ustc.edu.cn], storage-driver: overlay2, log-driver: json-file, log-opts: { max-size: 10m, max-file: 3 } }然后重启 Dockersudo systemctl restart docker提示registry-mirrors是国内加速源避免拉取ollama/ollama镜像时超时overlay2是推荐的存储驱动aufs在 Ubuntu 22.04 上已被弃用。第四步预置 Redis 与 Elasticsearch 的数据目录# 创建持久化目录 sudo mkdir -p /data/redis /data/elasticsearch # 设置权限重要否则容器无法写入 sudo chown -R 1001:1001 /data/redis sudo chown -R 1001:1001 /data/elasticsearch # Redis 的 1001 用户是官方镜像的默认 UIDElasticsearch 同理第五步验证云服务器 Docker 网络模型运行一个测试容器docker run --rm -it alpine ping -c 3 8.8.8.8 # 应能通 docker run --rm -it alpine nslookup docker.io # 应能解析域名注意如果nslookup失败检查/etc/resolv.conf是否被云厂商修改。可临时改为nameserver 114.114.114.114测试。至此云服务器已准备好承接所有重量级服务。Windows 本地和云服务器之间现在只差一条“控制指令通道”——这就是 OpenClaw 内核要干的事。3.3 双端网络打通解决最隐蔽的“跨网段通信”难题很多人部署失败根本原因不是配置错而是网络不通。OpenClaw 的云上本地模式本质上是两个不同网段的通信云服务器在公网如121.43.x.xWindows 本地在局域网如192.168.1.x而 WSL2 又给自己分配了一个虚拟网段如172.28.0.x。这三个网段必须能互相访问否则 Dashboard 代理会 502。Windows 本地 WSL2 访问云服务器WSL2 默认能访问公网所以curl http://your-server-ip:8080应该通。如果不通检查云服务器安全组是否放行8080端口。云服务器访问 Windows 本地这是难点。云服务器无法直接访问192.168.1.x但可以通过 WSL2 的host.docker.internal间接访问。我们在云服务器上运行一个测试容器docker run --rm -it --add-hosthost.docker.internal:host-gateway alpine curl -I http://host.docker.internal:8080如果返回 200说明云服务器能通过 Docker 网络访问 Windows 主机如果失败则需在 Windows 防火墙中放行8080端口入站规则 → 新建规则 → 端口 → TCP 8080 → 允许连接。WSL2 访问 Windows 本地服务在 WSL2 终端里执行curl -I http://localhost:8080 # 应返回 200证明 OpenClaw 内核能在 WSL2 中监听 Windows 主机端口提示Windows 的localhost在 WSL2 中默认映射到127.0.0.1但 OpenClaw 内核必须显式绑定0.0.0.0:8080才能被 WSL2 访问。这是很多教程遗漏的关键点。这三重网络验证必须全部通过才能进入下一步。我见过太多人跳过这步结果 Dashboard 页面打开是白屏查日志全是connection refused折腾两天才发现是防火墙没关。4. OpenClaw 全栈部署实操从二进制安装到 8 大 Dashboard 全激活4.1 Windows 本地OpenClaw 内核安装与 Control UI 启动现在终于轮到主角登场。在 Windows 的 PowerShell 中执行以下命令注意不是在 WSL2 里是在 Windows 原生命令行# 创建安装目录 mkdir C:\openclaw # 进入目录 cd C:\openclaw # 下载 v0.9.4 Windows 版本请务必核对 SHA256 curl -o openclaw.exe https://github.com/openclaw/openclaw/releases/download/v0.9.4/openclaw-v0.9.4-windows-amd64.exe # 验证完整性官方 Release 页面有 SHA256 值 certutil -hashfile openclaw.exe SHA256 # 应输出a1b2c3...与官网一致提示不要用浏览器下载容易被杀毒软件拦截。certutil是 Windows 自带命令无需额外安装。接下来生成初始配置文件config.yaml。这个文件是 OpenClaw 的“大脑”必须手工编写不能依赖--init自动生成因为自动生成的不包含 Windows 本地 Dashboard 配置# C:\openclaw\config.yaml server: http_port: 8080 grpc_port: 8081 websocket_port: 8082 # 关键必须绑定 0.0.0.0否则 WSL2 无法访问 host: 0.0.0.0 auth: # 生成一个强密码用 openssl 生成WSL2 中执行 # openssl rand -base64 32 control_token: Kx7YzQ2VpR9tLmN4FgH8jB1kW5qXeZ3sA6vTcI0nD7rUyO9fP2hM5lS8gV1bE4 dashboard_token_ttl: 86400 # 24 小时 dashboards: # 这里只配置 Windows 本地 Dashboard云上部分在云服务器上配 - name: control-ui url: http://localhost:3000 proxy_path: /control auth_mode: none - name: dify url: http://localhost:3001 proxy_path: /dify auth_mode: token_injection token_header: X-Dify-Token - name: langchain4j url: http://localhost:3002 proxy_path: /langchain4j auth_mode: token_injection token_header: X-LangChain-Token # 云上服务的地址供本地 Dashboard 调用 cloud: apisix: http://your-server-ip:9000 elasticsearch: http://your-server-ip:9200 redis: http://your-server-ip:6379注意control_token的值必须是你自己生成的不能用示例值。在 WSL2 中执行openssl rand -base64 32即可生成。现在启动 OpenClaw 内核# 在 C:\openclaw 目录下 .\openclaw.exe --config config.yaml --log-level debug如果看到日志里出现INFO[0000] OpenClaw server started on http://0.0.0.0:8080 INFO[0000] Control UI available at http://localhost:8080/control INFO[0000] Dashboard proxy registered: /dify - http://localhost:3001说明内核启动成功。此时打开浏览器访问http://localhost:8080/control应该能看到 Control UI 的登录页。4.2 云服务器Docker Compose 部署 5 大重量级 Dashboard登录云服务器创建docker-compose.yml文件# /home/ubuntu/openclaw-cloud/docker-compose.yml version: 3.8 services: redis: image: redis:7.2-alpine container_name: redis restart: unless-stopped ports: - 6379:6379 volumes: - /data/redis:/data command: redis-server /usr/local/etc/redis/redis.conf configs: - source: redis_conf target: /usr/local/etc/redis/redis.conf elasticsearch: image: docker.elastic.co/elasticsearch/elasticsearch:8.12.2 container_name: elasticsearch restart: unless-stopped ports: - 9200:9200 - 9300:9300 environment: - discovery.typesingle-node - ES_JAVA_OPTS-Xms4g -Xmx4g - xpack.security.enabledfalse volumes: - /data/elasticsearch:/usr/share/elasticsearch/data apisix: image: apisix/apisix:3.9.1 container_name: apisix restart: unless-stopped ports: - 9000:9000 - 9080:9080 - 9443:9443 volumes: - ./apisix_conf:/usr/local/apisix/conf - ./apisix_logs:/usr/local/apisix/logs ollama: image: ollama/ollama:latest container_name: ollama restart: unless-stopped ports: - 11434:11434 volumes: - ./ollama_models:/root/.ollama/models yolo-webui: image: roboflow/yolov5:latest container_name: yolo-webui restart: unless-stopped ports: - 8000:8000 environment: - PORT8000再创建docker-compose.override.yml用于覆盖开发配置# /home/ubuntu/openclaw-cloud/docker-compose.override.yml version: 3.8 services: redis: configs: - source: redis_conf target: /usr/local/etc/redis/redis.conf environment: - REDIS_PASSWORDyour_strong_redis_password configs: redis_conf: file: ./redis.conf创建redis.conf# /home/ubuntu/openclaw-cloud/redis.conf bind 0.0.0.0 port 6379 protected-mode yes requirepass your_strong_redis_password appendonly yes save 900 1 save 300 10 save 60 10000提示your_strong_redis_password必须用openssl rand -base64 24生成不能是简单字符串。现在一键启动所有服务cd /home/ubuntu/openclaw-cloud docker-compose up -d # 等待 2 分钟检查状态 docker-compose ps # 所有服务状态应为 Up验证各服务是否健康curl -I http://localhost:6379 # 应返回 400 Bad RequestRedis 不支持 GET但证明端口通 curl -I http://localhost:9200 # 应返回 200 OK curl -I http://localhost:9000 # 应返回 200 OK4.3 Dashboard Token 注入实战破解unauthorized: gateway token missing魔咒这才是真正卡住 90% 用户的环节。OpenClaw 的 Dashboard Token 不是自动注入的必须手动操作。以下是完整流程第一步在 Control UI 中生成 Dashboard Token打开http://localhost:8080/control用control_token登录就是config.yaml里的那个长字符串。进入 “Dashboard Management” 页面找到dify条目点击 “Generate Token”。系统会生成一个类似eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...的 JWT 字符串。第二步将 Token 粘贴到 Dify 设置页在新标签页打开http://localhost:3001Dify 的本地地址点击右上角头像 → Settings → API Keys → Add API Key。在 “Key Name” 填openclaw-proxy在 “API Key” 栏粘贴刚才生成的 Token保存。第三步在 OpenClaw 配置中启用 Token 注入编辑C:\openclaw\config.yaml找到dify配置段确认auth_mode: token_injection和token_header: X-Dify-Token存在。第四步重启 OpenClaw 内核在 PowerShell 中按CtrlC停止当前进程再执行.\openclaw.exe --config config.yaml --log-level debug第五步验证 Token 是否生效打开浏览器访问http://localhost:8080/dify。如果看到 Dify 的完整界面说明 Token 注入成功如果还是 401打开浏览器开发者工具F12→ Network 标签页刷新页面找到第一个请求查看 Request Headers确认X-Dify-Token已存在且值正确。注意每个 Dashboard 的 Token 都是独立的必须为 APISIX、LangChain4j、YOLOv5 WebUI 分别生成并粘贴。APISIX 的设置页在http://your-server-ip:9000/#/authenticationLangChain4j 在http://localhost:3002/settingsYOLOv5 WebUI 在http://localhost:8000/settings。这个过程看似繁琐但它是 OpenClaw 安全模型的核心。我建议你把所有 Token 保存在一个加密的笔记软件里并标注生成日期和过期时间24 小时避免第二天上班发现 Dashboard 全部失效。4.4 8 大 Dashboard 全激活从 URL 到功能的终极验证当所有 Token 都配置完毕你就可以通过http://localhost:8080/下的统一入口访问全部 8 个 Dashboard 了。以下是每个 Dashboard 的访问路径和必验功能点Dashboard访问 URL必验功能点常见失败现象排查方向Control UIhttp://localhost:8080/control点击 “System Status” 能看到所有云上服务的在线状态绿色圆点状态显示灰色或红色检查云服务器docker-compose ps确认redis、elasticsearch容器在运行APISIX Dashboardhttp://localhost:8080/dashboard/apisix在 “Routes” 页面能创建新路由点击 “Test Route” 能返回 200页面空白或 502检查config.yaml中apisix的url是否指向云服务器 IP而非localhostDify WebUIhttp://localhost:8080/dify创建一个新应用添加知识库上传 PDF能成功解析文本提示 “Failed to upload file”检查 Dify 容器日志docker logs dify看是否有redis connection refusedLangChain4j Playgroundhttp://localhost:8080/langchain4j输入一个 prompt选择 “Ollama” 模型能返回 LLM 响应卡在 “Loading…”检查云服务器curl http://localhost:11434/api/tags确认 Ollama 正常响应Ollama WebUIhttp://localhost:8080/ollama在 “Models” 页面能看到已下载模型列表点击 “Run” 能启动模型页面显示 “No models found”检查云服务器/home/ubuntu/openclaw-cloud/ollama_models目录是否有模型文件RedisInsighthttp://localhost:8080/redis连接到redis://your-server-ip:6379输入密码后能浏览 keys连接失败检查redis.conf中requirepass是否与docker-compose.yml中的REDIS_PASSWORD一致Elasticsearch Kibanahttp://localhost:8080/kibana进入 “Discover” 页面能查看日志索引提示 “Kibana server is not ready yet”检查云服务器docker logs elasticsearch