托管与部署
exe.dev
目标: 在 exe.dev VM 上运行 OpenClaw Gateway 网关,并可通过 https://<vm-name>.exe.xyz 访问。
本指南假定使用 exe.dev 默认的 exeuntu 镜像。在其他发行版上,请相应调整软件包。
所需条件
- exe.dev 账户
- 对 exe.dev VM 的
ssh exe.dev访问权限(可选,用于手动设置)
新手快速路径
- 打开 https://exe.new/openclaw
- 根据需要填写身份验证密钥/令牌
- 点击 VM 旁边的 "Agent",等待 Shelley 完成预配
- 打开
https://<vm-name>.exe.xyz/,使用已配置的共享密钥进行身份验证(默认使用令牌身份验证;如果切换gateway.auth.mode,也可以使用密码身份验证) - 使用
openclaw devices approve <requestId>批准待处理的设备配对请求
使用 Shelley 自动安装
exe.dev 的智能体 Shelley 可以根据提示安装 OpenClaw:
在此 VM 上设置 OpenClaw(https://docs.openclaw.ai/install)。执行 openclaw 新手引导时使用非交互和接受风险标志。根据需要添加提供的身份验证信息或令牌。配置 nginx,将默认已启用站点配置中的根位置从默认端口 18789 转发,并确保启用 WebSocket 支持。通过 "openclaw devices list" 和 "openclaw devices approve <request id>" 完成配对。确保仪表板显示 OpenClaw 的健康状态正常。exe.dev 会为我们处理从端口 8000 到端口 80/443 的转发和 HTTPS,因此最终的“可访问”地址应为 <vm-name>.exe.xyz,无需指定端口。手动安装
创建 VM
在你的设备上:
ssh exe.dev new然后连接:
ssh <vm-name>.exe.xyz安装必备项(在 VM 上)
sudo apt-get updatesudo apt-get install -y git curl jq ca-certificates openssl安装 OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash配置 nginx 以代理到端口 8000
编辑 /etc/nginx/sites-enabled/default:
server { listen 80 default_server; listen [::]:80 default_server; listen 8000; listen [::]:8000; server_name _; location / { proxy_pass http://127.0.0.1:18789; proxy_http_version 1.1; # WebSocket 支持 proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; # 标准代理标头 proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $remote_addr; proxy_set_header X-Forwarded-Proto $scheme; # 长连接的超时设置 proxy_read_timeout 86400s; proxy_send_timeout 86400s; }}覆盖转发标头,而不是保留客户端提供的链。OpenClaw 仅信任来自明确配置的代理的转发 IP 元数据,并将追加式 X-Forwarded-For 链视为加固风险。
访问 OpenClaw 并批准设备
打开 https://<vm-name>.exe.xyz/(请参阅新手引导的 Control UI 输出)。如果系统提示进行身份验证,请粘贴 VM 中配置的共享密钥。
本指南默认使用令牌身份验证,因此请使用 openclaw config get gateway.auth.token 获取 gateway.auth.token,或使用 openclaw doctor --n 生成一个新令牌。如果已将 Gateway 网关切换为密码身份验证,请改用 gateway.auth.password / OPENCLAW_GATEWAY_PASSWORD。
使用 openclaw devices list 和 openclaw devices approve <requestId> 批准设备。如有疑问,请通过浏览器使用 Shelley。
远程渠道设置
对于远程主机,优先使用一次 config patch 调用,而不是对 config set 进行多次 SSH 调用。将真实令牌保存在 VM 环境或 ~/.openclaw/.env 中,并且仅在 openclaw.json 中放置 SecretRef。有关完整的 SecretRef 契约,请参阅密钥管理。
在 VM 上,使服务环境包含其所需的密钥:
cat >> ~/.openclaw/.env <<'EOF'SLACK_BOT_TOKEN=xoxb-...SLACK_APP_TOKEN=xapp-...DISCORD_BOT_TOKEN=...OPENAI_API_KEY=sk-...EOF在本地计算机上创建补丁文件,并通过管道将其传输到 VM:
// openclaw.remote.patch.json5{ secrets: { providers: { default: { source: "env" }, }, }, channels: { slack: { enabled: true, mode: "socket", botToken: { source: "env", provider: "default", id: "SLACK_BOT_TOKEN" }, appToken: { source: "env", provider: "default", id: "SLACK_APP_TOKEN" }, groupPolicy: "open", requireMention: false, }, discord: { enabled: true, token: { source: "env", provider: "default", id: "DISCORD_BOT_TOKEN" }, dmPolicy: "disabled", dm: { enabled: false }, groupPolicy: "allowlist", }, }, agents: { defaults: { model: { primary: "openai/gpt-5.6-sol" }, models: { "openai/gpt-5.6-sol": { params: { fastMode: true } }, }, }, },}ssh <vm-name>.exe.xyz 'openclaw config patch --stdin --dry-run' < ./openclaw.remote.patch.json5ssh <vm-name>.exe.xyz 'openclaw config patch --stdin' < ./openclaw.remote.patch.json5ssh <vm-name>.exe.xyz 'openclaw gateway restart && openclaw health'当嵌套允许列表应与补丁值完全一致时,请使用 --replace-path,例如替换 Discord 频道允许列表:
ssh <vm-name>.exe.xyz 'openclaw config patch --stdin --replace-path "channels.discord.guilds[\"123\"].channels"' < ./discord.patch.json5有关完整的渠道配置参考,请参阅 Discord 和 Slack。
远程访问
exe.dev 负责处理远程访问的身份验证。默认情况下,来自端口 8000 的 HTTP 流量会通过电子邮件身份验证转发到 https://<vm-name>.exe.xyz。
更新
openclaw update有关渠道切换和手动恢复,请参阅更新。