词元广场TOKPUB.COM - 欢迎您,支持一个 Key 调用近 600+ 海内外模型,限时特价模型低至 1 折,欢迎上岸!
课程信息 本篇你将学会: 用 Docker 部署 OpenClaw 到服务器、配置 docker-compose、管理数据持久化、设置自动更新 谁需要看这篇? 如果你只是在自己电脑上用,不需要看这篇。这篇是给想把 OpenClaw 部署到远程服务器(比如云服务器)的人准备的
官方文档:docs.openclaw.ai/install/docker
docker compose up 搞定一切。agents.defaults.sandbox.mode 配置(默认 "non-main"),非主会话的 Agent 自动在独立 Docker 容器中隔离执行,不会搞坏宿主机。经验法则:本地开发用原生安装,远程部署用 Docker。
# 方法一:Docker Desktop(推荐)
# 从 https://www.docker.com/products/docker-desktop/ 下载安装
# 需要开启 WSL2 或 Hyper-V
# 方法二:winget
winget install Docker.DockerDesktop
# 安装后重启,验证
docker --version
docker compose version| 项目 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | 1 核 | 2 核+ |
| 内存 | 2 GB | 4 GB+ |
| 磁盘 | 10 GB | 20 GB+ |
| Docker | 24.0+ | 最新稳定版 |
| Docker Compose | v2.20+ | 最新稳定版 |
注意:本文全部使用 docker compose(v2 语法),不是docker-compose(v1 已弃用)。
⏭️ 小白可跳过 — 这部分面向运维专家,单机部署不需要
| 标签 | 说明 | 适用场景 |
|---|---|---|
latest | 最新稳定版 | 生产环境 |
vYYYY.M.D | 指定版本号(如 v2026.4.24) | 需要版本锁定 |
nightly | 每日构建 | 尝鲜新功能 |
local | 本地构建 | 自定义需求 |
docker-compose.yml 同目录下创建 .env 文件:-e > environment: 直接设置 > env_file: > .env 文件 > 镜像默认值。${VARIABLE} 引用 .env 文件中的值,或使用 Docker Secrets(Swarm 模式)。记得把 .env 加入 .gitignore。| 容器内路径 | 说明 | 是否需要持久化 |
|---|---|---|
/home/node/.openclaw | OpenClaw 配置和数据 | 必须 |
/home/node/.openclaw/workspace | 工作空间文件 | 必须 |
/var/lib/postgresql/data | PostgreSQL 数据 | 必须 |
/data | Redis 持久化数据 | 推荐 |
| 端口 | 服务 | 说明 |
|---|---|---|
| 18789 | Gateway | 主服务入口 |
| 18790 | Bridge | 内部桥接通信 |
| 18791 | Browser Control | 浏览器控制接口 |
| 18793 | Canvas Host | 画布渲染服务 |
| 18800-18899 | Browser CDP | Chrome DevTools Protocol 端口池 |
安全提示:生产环境建议绑定 127.0.0.1,通过反向代理暴露服务,不要直接把端口开放到公网。只有 Gateway(18789)需要对外暴露,其他端口仅在需要时映射。
反向代理 Forwarded Headers 安全提示(v2026.4.x+):OpenClaw 现在会检查转发头( X-Forwarded-For/X-Forwarded-Host/X-Forwarded-Proto)的一致性。即使请求通过 loopback 到达,如果携带了指向非本地来源的转发头,Gateway 会将该请求视为远程请求,不再享有 loopback 本地信任。反向代理必须覆盖(而非追加)来自客户端的转发头。如果使用 trusted-proxy 认证模式,需要在gateway.trustedProxies中配置代理 IP,且不能使用 loopback 地址。详见 10-安全配置指南。
host.docker.internal 访问:# /etc/caddy/Caddyfile
openclaw.yourdomain.com {
reverse_proxy 127.0.0.1:18789
}⏭️ 小白可跳过 — 这部分面向运维专家,单机部署不需要
fluentd 日志驱动转发。