概述

本指南详细介绍如何在 NVIDIA Jetson Orin Nano 上部署 OpenClaw——一个开源的自托管 AI 助手。Jetson Orin Nano 仅消耗 15 瓦功率即可提供 67 TOPS 的 AI 算力,非常适合作为全天候运行的个人 AI 助手平台。

OpenClaw 可以连接 Telegram、WhatsApp、Discord、Slack 等即时通讯平台,并通过 Ollama 在本地运行 AI 模型,充分利用 GPU 加速。本指南基于 OpenClaw 2026.2.16 版本的实际部署经验编写,同时涵盖云端 API 和本地模型两种配置方式。

ClawBox 用户如果你购买的是 ClawBox 预装设备,OpenClaw 已经安装好了。请直接跳到配置章节。

硬件要求

组件 规格
开发板 NVIDIA Jetson Orin Nano(建议 8 GB 版本)
AI 算力 67 TOPS · 1024 个 CUDA 核心
存储 512 GB NVMe SSD(推荐)或 MicroSD 卡
功耗 满载 AI 推理约 15 W
操作系统 JetPack 6.x(基于 Ubuntu)
网络 以太网或 WiFi

步骤一 —— 刷写 JetPack 系统

从 developer.nvidia.com/jetpack 下载最新的 JetPack 镜像,并刷写到存储介质上。

方案 A:MicroSD 卡

  • 下载 JetPack SD 卡镜像
  • 使用 Balena Etcher 或 Raspberry Pi Imager 刷写
  • 插入卡片并启动 Jetson

方案 B:NVMe SSD(推荐)

  • 在 Linux 主机上安装 NVIDIA SDK Manager
  • 通过 USB-C 连接 Jetson,直接刷写到 NVMe

首次启动时,完成 Ubuntu 初始设置(用户名、密码、网络配置)。

步骤二 —— 系统准备

更新系统并安装基础依赖:

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl git build-essential

将 Jetson 设置为最大性能模式:

sudo nvpmodel -m 0       # MAXN 性能模式
sudo jetson_clocks        # 锁定最大时钟频率

步骤三 —— 安装 Node.js 22+

OpenClaw 要求 Node.js 22.12.0 或更高版本。通过 nvm 安装:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install 22
nvm use 22
node --version           # 确认显示 v22.x.x

安装 pnpm(构建控制面板 UI 需要):

npm install -g pnpm

步骤四 —— 安装 OpenClaw

git clone https://github.com/OpenClaw/openclaw.git
cd openclaw
npm install
pnpm ui:build             # 构建控制面板前端

步骤五 —— 配置 OpenClaw

运行引导向导进行交互式配置:

npm start -- onboard

或手动设置最基本的配置:

npm start -- config set gateway.mode local

身份验证 —— 选择其一

方案 A:Claude Pro/Max 订阅(Setup Token)

如果你已有 Claude 订阅,推荐使用此方式。无需额外 API 费用。

npm install -g @anthropic-ai/claude-code
claude setup-token
npm start -- models auth paste-token --provider anthropic
方案 B:Anthropic API 密钥(按量计费)
  1. 在 console.anthropic.com 创建账户
  2. 前往 Settings → API Keys → Create Key
  3. 立即复制密钥(仅显示一次)
  4. 在 Billing 下添加预付费额度(最低 $5)
  5. 通过引导向导输入密钥

注意API 密钥存储在 ~/.openclaw/agents/main/agent/ 认证目录中,而非主配置文件。不要使用 config set anthropic.apiKey——该路径不被识别。

方案 C:通过 Ollama 使用本地模型

如需完全离线、无需云端的部署方式,请参阅下方步骤七

网关认证令牌

为控制面板设置访问保护令牌:

npm start -- config set gateway.auth.token <你的秘密令牌>

切勿泄露你的令牌或 API 密钥。如果不慎暴露,请立即在对应服务商的控制台撤销并重新生成。

步骤六 —— 创建 systemd 服务

首先,确认 Node.js 二进制文件的完整路径:

which node
ls ~/.nvm/versions/node/    # 确认准确的版本目录

创建服务文件(将占位符替换为你的实际值):

sudo tee /etc/systemd/system/openclaw.service > /dev/null <<'EOF'
[Unit]
Description=OpenClaw AI Assistant
After=network-online.target
Wants=network-online.target

[Service]
Type=simple
User=<你的用户名>
WorkingDirectory=/home/<你的用户名>/openclaw
ExecStart=/home/<你的用户名>/.nvm/versions/node/v22.x.x/bin/node \
    /home/<你的用户名>/openclaw/scripts/run-node.mjs \
    gateway --bind lan --port 18789
Restart=on-failure
RestartSec=10

[Install]
WantedBy=multi-user.target
EOF

关键注意事项:User= 必须与 openclaw 目录的所有者一致(错误值会导致 status=217)。ExecStart= 必须使用精确的、完整的 Node.js 路径——不能用通配符、不能用 ~、不能用 nvm 别名(路径错误会导致 status=203)。必须包含 gateway 子命令。--bind lan 使网关监听 0.0.0.0,省略则仅监听 localhost。没有 --host 参数——使用 --bind

启用并启动服务:

sudo systemctl daemon-reload
sudo systemctl enable openclaw
sudo systemctl start openclaw

验证:

sudo systemctl status openclaw
ss -tlnp | grep 18789
journalctl -u openclaw -n 20 --no-pager

步骤七 —— 使用 Ollama 运行本地模型(可选)

Jetson Orin Nano 可以通过 Ollama 在 GPU 加速下运行本地大语言模型,完全无需依赖云端服务。

安装 Ollama

curl -fsSL https://ollama.com/install.sh | sh

拉取模型

ollama pull llama3         # 或:mistral、phi3、qwen3
ollama list                # 查看已安装的模型

推荐模型(Jetson 8 GB 内存)

模型 大小 适用场景
llama3 (8B Q4) ~4.5 GB 通用助手、推理对话
mistral (7B Q4) ~4.1 GB 快速通用问答
phi3 (3.8B) ~2.2 GB 轻量级、响应快
qwen3-vl (2B) ~1.3 GB 图文理解、超轻量
codellama (7B Q4) ~3.8 GB 代码生成

为 OpenClaw 配置 Ollama

编辑 ~/.openclaw/openclaw.json,添加 Ollama 提供者:

{
  "models": {
    "providers": {
      "ollama": {
        "baseUrl": "http://127.0.0.1:11434/v1",
        "apiKey": "ollama-local",
        "api": "openai-completions"
      }
    }
  },
  "agents": {
    "defaults": {
      "model": {
        "primary": "ollama/llama3"
      }
    }
  }
}

配置完成后重启 OpenClaw:

sudo systemctl restart openclaw

步骤八 —— 访问控制面板

控制面板 UI 要求安全上下文(HTTPS 或 localhost)。通过 HTTP 直接访问局域网 IP 会显示"requires HTTPS or localhost"错误。

SSH 隧道(推荐局域网访问方式)

在你的客户端机器上执行:

ssh -N -L 18789:127.0.0.1:18789 <用户名>@<Jetson的IP>

然后在浏览器中打开:

http://localhost:18789/#token=<你的秘密令牌>

生成仪表盘 URL

在 Jetson 主机上运行:

cd ~/openclaw
npm start -- dashboard --no-open

这会输出带有认证信息的完整 URL。通过 SSH 隧道在浏览器中使用。

防火墙

如果使用 UFW:

sudo ufw allow 18789

常用命令

以下命令均在 ~/openclaw 目录下通过 npm start -- 执行:

操作 命令
交互式设置 npm start -- onboard
设置配置值 npm start -- config set <键> <值>
设置模型认证 npm start -- models auth paste-token --provider anthropic
查看已配对设备 npm start -- devices list
获取仪表盘 URL npm start -- dashboard --no-open
查看实时日志 journalctl -u openclaw -f
重启服务 sudo systemctl restart openclaw
查看 GPU 状态 jtop(安装:sudo pip3 install jetson-stats
查看功耗模式 sudo nvpmodel -q

故障排除

症状 原因 解决方法
status=217/USER 服务文件中 User= 值无效 设置为你的实际用户名
status=203/EXEC Node.js 路径不存在 使用 ls ~/.nvm/versions/node/ 确认精确路径
只输出帮助信息就退出 缺少 gateway 子命令 在 ExecStart 中添加 gateway
unknown option '--host' 该参数不存在 改用 --bind lan
Missing config 错误 未设置 gateway.mode config set gateway.mode local
局域网 IP 连接被拒绝 仅绑定了 localhost 在 ExecStart 中添加 --bind lan
HTTPS or localhost 错误 UI 需要安全上下文 使用 SSH 隧道通过 localhost 访问
No API key for anthropic 未配置模型认证 运行 npm start -- onboard
ENOENT spawn pnpm 未安装 pnpm npm install -g pnpm
控制面板资源未找到 UI 未构建 运行 pnpm ui:build
Ollama 未检测到 GPU CUDA 路径配置错误 验证 JetPack 安装,使用 jtop 检查
gateway.token 被忽略 旧版配置键名 改用 gateway.auth.token
Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐