模板制作脚本
在 Ubuntu 22.04 内执行,只安装环境,不做任何配置:
#!/bin/bash
# openclaw-template-setup.sh
# 用途:制作 OpenClaw 模板镜像,仅安装环境,不执行 onboard
set -e
echo "==> [1/5] 更新系统"
sudo apt update && sudo apt upgrade -y
echo "==> [2/5] 安装基础依赖"
sudo apt install -y curl git build-essential
echo "==> [3/5] 安装 Node.js 20"
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
sudo apt-get install -y nodejs
echo "==> [4/5] 配置 npm 国内镜像"
npm config set registry https://registry.npmmirror.com
echo "==> [5/5] 安装 OpenClaw(跳过 onboard)"
curl -fsSL https://openclaw.ai/install.sh | bash -s -- --no-onboard
# 让当前 shell 立即感知新 PATH,无需手动拼接路径
export PATH="$(npm config get prefix)/bin:$PATH"
echo "==> 验证安装"
openclaw --version
echo "==> 清理"
sudo apt clean
sudo rm -rf /var/lib/apt/lists/*
history -c && sudo truncate -s 0 /root/.bash_history
echo "✅ 模板制作完成,请关机后制作快照。"
用户初始化脚本
根据模板创建虚拟机后,用户首次执行:
#!/bin/bash
# openclaw-init.sh
# 用途:新虚拟机首次初始化,配置模型和 channel
set -e
echo "==> [1/3] 检查 OpenClaw 是否已安装"
if ! command -v openclaw &> /dev/null; then
echo "❌ 未检测到 openclaw,请确认模板是否正确制作"
exit 1
fi
echo "OpenClaw 版本:$(openclaw --version)"
echo "==> [2/3] 运行配置向导(配置模型、channel、daemon)"
openclaw onboard --install-daemon
echo "==> [3/3] 验证服务状态"
openclaw status
openclaw doctor
echo "✅ 初始化完成!"
echo ""
echo "常用命令:"
echo " openclaw status # 查看运行状态"
echo " openclaw logs --follow # 实时日志"
echo " openclaw dashboard # 打开 Web 控制台"
流程说明
模板机 用户虚拟机
───────────────────── ──────────────────────
apt 更新 & 安装依赖
配置 npm mirror
安装 Node.js 20
安装 openclaw --no-onboard
清理缓存 & 历史
关机 → 制作快照/模板
↓ 克隆模板
执行 openclaw-init.sh
└─ openclaw onboard --install-daemon
└─ 配置模型 / channel
└─ 启动 daemon 服务
注意:
npm config set registry是针对当前用户生效的,模板里设置的是制作模板时的用户(如administrator)。如果用户克隆后使用相同账号,mirror 配置会继承;如果换了用户,需在初始化脚本里再执行一次npm config set registry https://registry.npmmirror.com。