为什么「安装路径」会决定你能否连上 Gateway
CLI、守护进程与 Gateway 共用配置目录与环境变量。NPM 全局装把二进制放在 node_modules/.bin,配置多在用户主目录;Docker 把路径锁在容器内,卷挂载错了则宿主机改的 config.yaml 进不去;curl 脚本若以 root 跑,可能与登录用户权限分裂,launchd 读不到令牌。工作目录相关环境变量若在不同 shell profile 里不一致,也会出现「终端能跑、服务起不来」。先确认进程在读哪条路径。部署全貌可参考 《2026年 OpenClaw 部署实战:从安装到自动化工作流》。
NPM、Docker 与 curl:三种装法的典型差异
| 维度 | NPM 全局 | Docker | curl 脚本 |
|---|---|---|---|
| 升级方式 | npm update -g,随 Node 变 |
新镜像 + 卷迁移 | 重跑脚本,防覆盖配置 |
| 网络出口 | 同宿主 | bridge,须映射端口 | 同宿主 |
| 权限模型 | 用户/全局 | 常 root | 易 root/用户混用 |
| 适合场景 | 本机开发 | 生产隔离 | 裸机首装 |
Gateway 排错:先监听地址,再证书
常见三类:连接被拒(未起或只绑 127.0.0.1)、TLS 失败(反代协议/证书域名不一致)、WebSocket 断(CDN 未开升级)。先本机 curl -v 直连端口,再走域名 HTTPS;两者结果不一致时,问题多半在网络层而非应用。远端 Mac 上跑 Gateway 时,注意隧道别把回环指错。
远程 Mac:谁在跑 Gateway
执行端放远程 Mac 可取一致运行时与稳定供电,但要付 RTT。Gateway 在本地、worker 在远端会分裂日志;宜定一侧为唯一入口。节点与成本见 短期项目买 Mac 还是租远程主机的决策矩阵。
内存与统一内存
- 并发:预留高于各任务峰值之和约 1.3–1.5 倍,防 swap 拖慢 Gateway。
- 同机叠加:本地模型或 Xcode 与 OpenClaw 抢统一内存时,须设资源上限。
- 无人值守:避免长期顶满内存致 OOM;自动拉起后日志滞后更难查。
最小排错顺序
进程 → 监听与端口 → 配置路径一致 → 反代/TLS → 防火墙。混用 NPM 开发机与 Docker 生产时,文档写清默认路径与团队覆盖路径,比多装调试器更省事。
运维成本简表
| 成本项 | NPM | Docker | curl |
|---|---|---|---|
| 版本锁定 | 随 Node 漂移 | tag 可锁死 | 看脚本维护 |
| 备份 | 自建 | 卷+镜像 | 常混系统备份 |
| 复现问题 | 难 | 易 | 中 |
常见问题
ps aux 找二进制再反推配置。在 Mac mini 上跑 OpenClaw:路径更干净、长期更省心
Apple Silicon 统一内存减少 Gateway 与工具链抢带宽的卡顿;M 系列待机功耗低,适合 7×24 入口或执行节点;Gatekeeper、SIP、FileVault 降低无人值守风险。Homebrew 与 Docker 同用户态,排错不必跨 WSL。要把部署落在稳定硬件上,Mac mini M4 是兼顾性价比与静音的务实起点。
若你正准备把 Gateway 与执行端收束到可备份、可预期的路径,现在入手 Mac mini M4,能让远程协作与自动化少踩环境坑。