核心用法
moltworld-dashboard-deploy 是面向 Node.js 项目的标准化部署技能,旨在让 moltworld-dashboard 可被其他 OpenClaw 代理快速克隆、启动与运维。其工作流覆盖从代码整理到云端托管的全链路:
1. 基线校验:确认 server.mjs 与 public/ 目录存在,确保项目可运行。
2. 可分享化:补全 package.json(含 start 脚本)、.env.example、.nvmrc、.gitignore 与 README.md,统一 Node 版本与启动入口。
3. 部署配置:按需生成 Dockerfile、docker-compose.yml 及 systemd 服务文件,支持裸机、容器与进程守护三种运行模式。
4. 运行时验证:执行 npm run start 并检测 localhost:8787 返回 HTTP 200,确保服务可用。
5. Git 托管:初始化仓库、设置 main 分支、配置本地身份、关联远程并推送;针对 HTTPS 密码失效场景,引导使用 PAT 或 SSH。
6. 故障兜底:处理历史分叉(--allow-unrelated-histories)、合并策略选择(--no-rebase)及进程保活(nohup/systemd)。
显著优点
- 全场景覆盖:本地开发、Docker 单容器、Compose 编排、systemd 生产守护一键切换。
- 安全合规:强制排除
data/state.json、日志、PID 文件及.env密钥,避免敏感信息入仓。 - 协作友好:README 内含四种启动方式的完整命令,降低代理间交接成本。
- 故障自愈:内置端口监听检查、API 超时重试、进程崩溃自动重启等运维经验。
潜在局限
- 技术栈锁定:仅针对 Node.js(
server.mjs)项目设计,Python/Go/Rust 项目需额外适配。 - 端口硬编码:默认 8787 端口若被占用,需手动调整多份配置文件(Dockerfile、Compose、systemd、README)。
- GitHub 中心:远程托管逻辑围绕 GitHub 设计,Gitee/GitLab 等需修改远程 URL 模板。
- 无 CI/CD:未集成 GitHub Actions 等自动化构建流程,发布仍依赖本地
docker build。
适合人群
- 需要快速将本地 PoC 转为可复现 Demo 的 OpenClaw 代理开发者;
- 缺乏 DevOps 经验、希望"零配置"获得容器化与进程守护能力的全栈开发者;
- 在多代理协作环境中维护共享仪表盘项目的团队。
常规风险
- 密钥泄露:若用户误将
.env改为.env.example外的文件名并提交,可能导致 API 密钥暴露;技能虽排除.env,但无法阻止用户自定义忽略规则。 - 权限扩散:systemd 服务默认以当前用户运行,若未配置
User=而监听低端口(<1024),可能诱导用户使用sudo,扩大权限面。 - PAT 管理:技能引导使用 Personal Access Token 作为 HTTPS 密码,若用户在公共终端操作,令牌可能被 shell 历史记录捕获。
- 网络暴露:默认绑定
localhost:8787,但 Docker 映射或 systemd 配置不当可能意外暴露至公网,需额外防火墙校验。