
一个运行在你自己设备上的个人 AI assistant。该镜像预装了 OpenClaw、ffmpeg、*** 以及常用 CLI 运行环境,默认启动 Gateway,也可以切换到 CLI 模式进行配置和排障
[!WARNING]
镜像目前会自动同步官方版本,而由于 OpenClaw 处于日更状态,请尽量不要使用 latest/codebase 标签
而是改成指定具体版本号以避免不兼容的突发更新导致服务中断
生成 Token,并保存到环境变量 OPENCLAW_GATEWAY_TOKEN,也可以在首次启动时让镜像自动生成(会在日志中输出)
bashopenssl rand -hex 32
bash# 推荐:挂载配置目录并固定 Gateway Token docker run -d \ --name openclaw \ -p 18789:18789 \ -v ./data:/home/openclaw/.openclaw \ -e OPENCLAW_GATEWAY_TOKEN=change-me \ aliuq/openclaw:latest # 本地调试:关闭设备配对认证,方便快速进入 Control UI docker run --rm \ --name openclaw \ -p 18789:18789 \ -e DISABLE_DEVICE_AUTH=true \ aliuq/openclaw:latest
首次启动时,镜像会在日志中输出 Gateway Token;如果你没有显式传入 OPENCLAW_GATEWAY_TOKEN,每次重新创建容器时都可能生成新的 token
默认端口为 18789,Gateway 启动后可通过浏览器访问 http://localhost:18789 打开 OpenClaw 的 Control UI / Web 界面
创建 docker-compose.yml 文件:
yamlname: openclaw services: openclaw: image: aliuq/openclaw:latest container_name: openclaw restart: unless-stopped ports: - '18789:18789' environment: OPENCLAW_GATEWAY_TOKEN: change-me OPENCLAW_GATEWAY_BIND: lan volumes: - ./data:/home/openclaw/.openclaw
运行服务:
bashdocker-compose up -d
两者都预装了以下核心组件:
区别在于:
latest 使用的用户名和用户 ID 都是 openclaw,符合一般的非 root 用户习惯codebase 使用 root 用户,额外还包含了 Docker、sshd 等工具OC_* 环境变量自动生成 openclaw.jsondoctor、devices、channels 等命令建议将 /home/openclaw/.openclaw 挂载到宿主机目录,这里通常会保存:
openclaw.json 配置文件| 变量名 | 默认值 | 说明 |
|---|---|---|
RUN_MODE | gateway | 启动模式,支持 gateway、cli,其他值会直接执行原始命令 |
OPENCLAW_GATEWAY_BIND | lan | Gateway 监听地址 |
OPENCLAW_GATEWAY_PORT | 18789 | Gateway 监听端口 |
OPENCLAW_GATEWAY_TOKEN | 自动生成 | 固定 Gateway Token;未设置时会在容器启动时随机生成 |
ALLOWED_ORIGINS | http://localhost:18789,http://127.0.0.1:18789 | Control UI 允许的来源 |
INSECURE_AUTH | false | 是否允许不安全的 Control UI 鉴权方式 |
DISABLE_DEVICE_AUTH | false | 是否关闭设备配对认证,仅建议本地调试时使用 |
STARSHIP_CONFIG | - | 可选,自定义容器内 shell 的 Starship 配置,支持 URL 或文件路径 |
OC_* 配置写入规则
OC_*存在的目的仅仅只是为了第一次启动时用户能够进入 Gateway UI
镜像入口脚本会在首次启动时检查是否存在 openclaw.json。如果配置文件不存在,则会把所有以 OC_ 开头的环境变量转换为 OpenClaw 配置并写入文件
具体可查看文件 update_config.mjs
OC_ 前缀__ 分割成层级. 连接,形成最终的配置键示例:
OC_AGENT__MODEL=anthropic/claude-opus-4-1 会被转换为 agent.model=anthropic/claude-opus-4-1OC_CHANNELS__TELEGRAM__BOT_TOKEN=123456:example 会被转换为 channels.telegram.botToken=123456:example此外,还提供了几个特殊的环境变量,仅为了简写:
ALLOWED_ORIGINSINSECURE_AUTHDISABLE_DEVICE_AUTHbashdocker run -d \ --name openclaw \ -p 18789:18789 \ -v ./data:/home/openclaw/.openclaw \ -e OPENCLAW_GATEWAY_TOKEN=change-me \ -e OC_AGENT__MODEL=anthropic/claude-opus-4-1 \ -e OC_CHANNELS__TELEGRAM__BOT_TOKEN=123456:example \ aliuq/openclaw:latest
需要注意:
OC_* 变量只会在创建配置文件时生效openclaw.json 已经存在,后续重启容器不会重新覆盖openclaw.json,或者直接进入容器手动修改该文件如果你只想执行 OpenClaw CLI 命令,而不是启动 Gateway,可以将 RUN_MODE 设置为 cli:
bashdocker run --rm -it \ --name openclaw-cli \ -e RUN_MODE=cli \ -v ./data:/home/openclaw/.openclaw \ aliuq/openclaw:latest doctor
也可以在已经运行的容器里直接进入 shell:
bashdocker exec -it openclaw /bin/zsh
OpenClaw 默认启用设备配对认证。如果你需要把移动端或其他节点接入当前 Gateway,通常需要先在 UI 中发起配对,再通过 CLI 查看和批准请求
pairing required要将设备与 OpenClaw 配对,请先访问容器的 shell:
bash# openclaw 是容器名称,如果使用了不同名称请修改 docker exec -it openclaw /bin/zsh
运行以下命令列出并批准设备配对请求:
bash# 获取待处理的设备配对请求列表 openclaw devices list # 从上一条命令的输出中获取请求 ID # 使用请求 ID 批准设备配对请求 openclaw devices approve <请求 ID>
!https://raw.githubusercontent.com/aliuq/apps-image/refs/heads/master/apps/openclaw/screenshots/device-approve.png
如果你使用了 DISABLE_DEVICE_AUTH=true,启动日志中会看到类似下面的提示:
bash[gateway] security warning: dangerous config flags enabled: gateway.controlUi.dangerouslyDisableDeviceAuth=true. Run `openclaw security audit`.
这表示你关闭了设备认证,适合本地临时调试,但不适合长期使用或暴露到公网
bash# 克隆仓库 git clone https://github.com/aliuq/apps-image.git cd apps-image/apps/openclaw # 构建运行镜像 docker buildx build -f ./Dockerfile -t openclaw:local --load . # 运行测试 docker run --rm --name openclaw-local -p 18789:18789 -e DISABLE_DEVICE_AUTH=true openclaw:local
仓库中还提供了 Dockerfile.codebase,适合在本地构建一个更偏开发用途的镜像:
bashdocker buildx build -f ./Dockerfile.codebase -t openclaw:local-codebase --load .
/home/openclaw/.openclaw,否则容器重建后配置、token 和状态会丢失OPENCLAW_GATEWAY_TOKEN 时,Gateway Token 由入口脚本在启动时生成DISABLE_DEVICE_AUTH=true 只建议用于本机调试,不建议在公网环境使用OC_* 初始化了配置,后续修改优先直接编辑 openclaw.json📝 该文档由 AI 辅助生成并整理,如有问题请随时反馈




探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务