服务器部署:Docker/VPS 上 7×24 运行
适用场景
你已经在本机跑通过 OpenClaw,现在想把它搬到一台 VPS 上 7×24 常驻:消息渠道随时可达,任务在后台继续执行。或者你的服务器不想装 Node 环境,需要一个隔离、可丢弃的容器化 Gateway。
先明确官方定位:Docker 是可选方案。如果你只是在自己电脑上日常使用,继续走常规安装流程更简单;Docker 面向「无本地安装的宿主机」和「一次性隔离环境」这两类需求。
准备
开工前确认四件事:
- 容器环境:Docker Desktop 或 Docker Engine,外加 Docker Compose v2。
- 内存:本地从源码构建镜像至少需要 6 GB RAM;改用预构建镜像可以绕开这个门槛。
- 磁盘:给镜像和日志留足空间。
- 安全基线:VPS 或公网主机务必先读官方的网络安全加固文档,重点是 Docker 自带的
DOCKER-USER防火墙链——常规 iptables/ufw 规则未必覆盖容器流量。
前置阅读:安装备用方式:桌面应用、Docker 与 npm。
跟我做
第 1 步:拿到官方镜像
在仓库根目录运行:
bash
./scripts/docker/setup.sh这会在本地构建 openclaw:local。更省资源的做法是直接用预构建镜像:
bash
export OPENCLAW_IMAGE="ghcr.io/openclaw/openclaw:latest"
./scripts/docker/setup.shGHCR 是官方主注册表,承担发布自动化、固定版本部署和来源校验;同一发布也会同步 Docker Hub 镜像 openclaw/openclaw。只认这两个源,别用第三方镜像——它们的发布节奏和保留策略与官方不同。
生产环境建议固定版本 tag(如 2026.9.3),别盲目追 latest:稳定版发布会移动 latest 和 main,只有收尾月的维护版本才动 extended-stable。另有 slim、main-slim、latest-browser 等变体可选。
第 2 步:启动 Gateway 容器
setup.sh 会自动完成 onboarding:提示输入模型 API key、生成 Gateway token 写入 .env,最后通过 Docker Compose 启动 Gateway。
onboarding 的流程与本机安装完全一致:一个 Gateway 进程就是一个信任边界,模型和渠道都在这里配置。
第 3 步:公网加固与常驻
- 防火墙:按官方网络暴露规则收紧端口,确认
DOCKER-USER链覆盖容器流量。 - 自动重启:给容器配置重启策略,VPS 重启后 Gateway 自动恢复。
- 多用户隔离:服务多个互不信任的用户时,不要共用一个 Gateway——每个信任边界跑独立的 Gateway,最好放在不同 OS 用户或不同主机下。
- 沙箱:默认 Docker 沙箱后端只用
dockerCLI,想换原生 Podman 就把后端设为"podman";沙箱默认关闭,也不要求 Gateway 本身跑在容器里。
检查点
docker ps中 Gateway 容器处于运行状态,重启 VPS 后能自动回来。- 镜像来自
ghcr.io/openclaw/openclaw或openclaw/openclaw,版本 tag 已固定。 DOCKER-USER链规则已按公网暴露文档配置。- 互不信任的用户群体各自对应独立 Gateway,而不是一个容器服务所有人。
边界
- 国内拉取加速:官方未提供 ghcr.io / Docker Hub 的镜像加速文档,本页不猜测镜像地址 ;拉取失败先排查服务器出网与 DNS。
- 配置不变:Docker 只换运行载体,模型、渠道、Skills 的配置方式与本机部署一致。
- 版本陷阱:官方记录过一次版本号错误——npm 上发布的
2026.9.1-beta.1实际对应2026.8.1-beta.4,固定预发布 tag 时以发布说明为准。
下一步
- 进入进阶手册:Skills 与安全加固,优先读安全加固(三):提示注入防御与安全审计——公网暴露后的下一道防线。
- 需要对比各安装路径时,回顾安装备用方式:桌面应用、Docker 与 npm。