前提条件

开始之前,请确保你的服务器已安装以下软件:

1

安装 Docker

如果尚未安装 Docker,运行以下命令一键安装:

curl -fsSL https://get.docker.com | sh

安装完成后验证:

docker --version
# Docker version 27.x.x
2

安装 Docker Compose

Docker Compose 通常随 Docker 一起安装。验证是否可用:

docker compose version
# Docker Compose version v2.x.x
如果你的 Docker 版本较新(20.10+),已内置 docker compose 命令,无需单独安装。

方式一:Docker Compose(推荐)

Docker Compose 是最推荐的部署方式,配置清晰、易于管理和更新。

1

创建项目目录

mkdir -p /opt/openclaw && cd /opt/openclaw
2

创建 docker-compose.yml

新建 docker-compose.yml 文件,写入以下内容:

version: "3.8"

services:
  openclaw:
    image: openclawai/openclaw:latest
    container_name: openclaw
    restart: always
    ports:
      - "18789:18789"
    volumes:
      - ./data:/app/data
    environment:
      - OPENAI_API_KEY=sk-your-api-key
      - OPENAI_BASE_URL=https://api.openai.com/v1
      - DEFAULT_MODEL=gpt-4o
    logging:
      driver: json-file
      options:
        max-size: "50m"
        max-file: "3"
sk-your-api-key 替换为你自己的 AI 模型 API Key。如使用国内中转平台,同时修改 OPENAI_BASE_URL 为对应地址。
3

启动服务

# 拉取镜像并后台启动
docker compose up -d

首次启动会自动拉取镜像,稍等片刻即可完成。

4

验证运行状态

# 查看容器状态
docker compose ps

# 查看日志
docker compose logs -f openclaw

看到服务正常启动的日志后,通过 SSH 隧道访问管理页面:

# 在本地电脑执行(建立 SSH 隧道)
ssh -L 18789:127.0.0.1:18789 root@你的服务器IP

然后在浏览器打开 http://127.0.0.1:18789 即可进入管理后台。

方式二:Docker 命令行

如果你只想快速启动单个容器,也可以直接使用 docker run

docker run -d \
  --name openclaw \
  --restart always \
  -p 18789:18789 \
  -v /opt/openclaw/data:/app/data \
  -e OPENAI_API_KEY=sk-your-api-key \
  -e OPENAI_BASE_URL=https://api.openai.com/v1 \
  -e DEFAULT_MODEL=gpt-4o \
  openclawai/openclaw:latest
Docker 命令行适合快速测试。生产环境推荐使用 Docker Compose,方便管理配置和后续更新。

环境变量说明

以下是 OpenClaw 支持的核心环境变量:

变量名 说明 默认值
OPENAI_API_KEY AI 模型的 API Key(必填)
OPENAI_BASE_URL API 基础地址,兼容 OpenAI 协议的平台均可 https://api.openai.com/v1
DEFAULT_MODEL 默认使用的模型名称 gpt-4o
PORT 服务监听端口 18789
国内用户提示

推荐使用兼容 OpenAI 协议的国内中转平台,将 OPENAI_BASE_URL 替换为中转平台地址即可,一个 Key 可调用多种模型(DeepSeek、Claude、GPT 等)。

接入消息渠道

Docker 部署完成后,通过管理后台配置消息渠道,让 AI 助理接入你常用的 IM 工具:

所有渠道配置均在管理后台的 Channels 页面完成,无需修改 Docker 配置。

数据持久化

OpenClaw 的对话记录、配置文件等数据存储在容器内的 /app/data 目录中。通过 Docker 的 Volume 映射,可以将数据保存到宿主机,避免容器重建时丢失。

# docker-compose.yml 中的 volumes 配置
volumes:
  - ./data:/app/data

上面的配置将容器内的 /app/data 映射到宿主机的 /opt/openclaw/data 目录。

备份建议

定期备份 /opt/openclaw/data 目录即可保存所有数据。你可以用 tar 打包或同步到对象存储。

# 手动备份示例
tar -czf openclaw-backup-$(date +%Y%m%d).tar.gz /opt/openclaw/data

常见问题

Q: 容器启动后立刻退出怎么办?

查看容器日志定位问题:

docker compose logs openclaw

常见原因:API Key 未配置或格式错误、端口被占用、挂载目录权限不足。确认环境变量正确后重新启动。

Q: 端口 18789 被占用了怎么办?

修改 docker-compose.yml 中的端口映射,将宿主机端口改为其他值:

ports:
  - "28789:18789"  # 宿主机端口:容器端口

修改后重启容器:

docker compose up -d

Q: 如何更新到最新版本?

Docker 更新非常简单,拉取最新镜像后重启即可:

# 拉取最新镜像
docker compose pull

# 重启服务(自动使用新镜像)
docker compose up -d

数据保存在 Volume 中,更新不会丢失任何配置和对话记录。

Q: 如何查看运行日志?

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

# 查看最近 100 行
docker compose logs --tail 100 openclaw

Q: 国内服务器拉取镜像很慢怎么办?

配置 Docker 镜像加速器。编辑 /etc/docker/daemon.json,添加镜像源地址(如腾讯云 https://mirror.ccs.tencentyun.com、DaoCloud https://docker.m.daocloud.io)。

保存后重启 Docker:

sudo systemctl restart docker

Q: 如何完全卸载?

# 停止并删除容器
docker compose down

# 删除数据(谨慎操作!)
rm -rf /opt/openclaw

下一步