Community Guide

用 Docker 部署 OpenClaw

一篇务实的 Docker 部署总结,重点解释何时适合用 Docker、哪些目录必须挂载,以及如何避免容器重启后丢状态。

2026/03/13

为什么要用 Docker

当本地 npm 安装离系统环境太近,或者你想把本地和服务器之间的迁移路径做得更清楚时,Docker 就是下一步。

橙色皮书把 Docker 的主要价值概括成三点:

  • 环境隔离
  • 迁移更方便
  • 更适合服务器长期运行

真正重要的不是容器,而是状态

橙色皮书在 Docker 部分反复强调,至少有两类数据必须持久化:

  • OpenClaw 配置与运行状态
  • 工作区和相关文件

如果容器重启后这些状态不在,你会失去真正让 OpenClaw 有价值的那部分内容。

compose 层面的核心关注点

指南层面的顺序很简单:

  • 克隆仓库
  • 使用内置 compose 文件
  • 挂载持久卷
  • 确认 Gateway 和 Web UI 端口

橙色皮书在 Docker 部署语境里提到 18789 作为 Gateway 端口,3000 作为 Web UI 端口。真正暴露之前,仍应以当前 compose 文件为准。

镜像变体不必一上来就折腾

橙色皮书提到几类镜像:

  • 标准版
  • slim
  • sandbox
  • 带浏览器的 sandbox

起步时不需要一上来就玩所有变体。先把普通路径跑通,再在确实有理由时切换。

正确顺序

  1. 先确认模型路线和渠道目标。
  2. 挂好持久化状态。
  3. 再把容器拉起来。
  4. 跑诊断检查。
  5. 最后才接渠道或远程访问。

下一步看什么