VPS 部署:让 Moltbot 7×24 小时在线
本地运行 Moltbot 适合体验和测试,但如果笔记本合盖或断网,Bot 就会停止服务。
要让 Moltbot 持续在线运行,VPS 是比较务实的选择。好消息是 Moltbot 非常轻量,最低配的服务器就能胜任。
服务器配置要求
结论是:不需要高配。 Moltbot 资源消耗很低,1 核 1G 的机器完全够用。
| 资源 | 最低要求 | 推荐配置 |
|---|---|---|
| CPU | 1 核 | 2 核(留有余量运行其他服务) |
| 内存 | 1 GB | 2 GB |
| 硬盘 | 10 GB SSD | 20 GB SSD |
| 系统 | Ubuntu 22.04+ | Ubuntu 24.04 LTS |
| 端口 | 22 (SSH) | 再加 443(Webhook 需要) |
推荐 VPS 服务商
以下服务商均经过实测,运行 Moltbot 没有问题:
Namecheap VPS — $3.88/月起,1 核 CPU / 1GB RAM / 20GB SSD,性价比很高,适合入门。年付 $46.56,比月付节省 20%。
Bluehost VPS — $4.99/月起,1 核 CPU / 2GB DDR5 RAM / 50GB NVMe 存储,不限带宽。NVMe 硬盘读写速度更快,适合对性能有一定要求的场景。
DigitalOcean — 新用户注册送 $200 / 60 天免费额度。文档质量优秀,支持一键部署 Docker,开发者友好。
从零配置服务器
购买 VPS 后,服务商会提供 IP 地址和 root 密码。打开终端:
ssh root@你的服务器IP首次连接会提示确认 fingerprint,输入 yes 即可。
1. 更新系统 + 创建用户
使用 root 运行服务是不好的实践,应创建专用用户:
# 先更新系统,新机器的包版本通常较旧
apt update && apt upgrade -y
# 创建名为 moltbot 的用户
adduser moltbot
usermod -aG sudo moltbot
# 切换到新用户
su - moltbot从这里开始,所有操作都在 moltbot 用户下进行。
2. 安装 Node.js
Moltbot 需要 Node.js 22 或以上。使用 NodeSource 安装:
curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt install -y nodejs
node --version # 应该显示 v22.x注意版本
Node 20 也能凑合用,但官方推荐 22+。别在这省事,版本不对出了 bug 你会很头疼。
3. 安装 Moltbot
npx moltbot init按提示操作,它会在 ~/.moltbot/ 下生成配置文件。
4. 配置环境变量
这一步很关键,不要将 API Key 写在配置文件中。使用环境变量:
# 创建 .env 文件(后续 systemd 会用到)
cat > ~/.env << 'EOF'
ANTHROPIC_API_KEY=sk-ant-xxxxx
TELEGRAM_BOT_TOKEN=xxxxx
EOF
# 锁定权限,仅当前用户可读
chmod 600 ~/.env为什么不写 .bashrc?因为 systemd 服务不经过 shell 登录流程,无法读取 .bashrc。使用 EnvironmentFile 才是正确做法。
5. 设置 systemd 服务
这是最关键的一步——让 Moltbot 开机自启、崩溃自动重启:
sudo tee /etc/systemd/system/moltbot.service > /dev/null << 'EOF'
[Unit]
Description=Moltbot AI Assistant
After=network.target
[Service]
Type=simple
User=moltbot
WorkingDirectory=/home/moltbot
ExecStart=/usr/bin/npx moltbot start
Restart=on-failure
RestartSec=5
EnvironmentFile=/home/moltbot/.env
[Install]
WantedBy=multi-user.target
EOF然后启动服务:
sudo systemctl daemon-reload
sudo systemctl enable moltbot # 开机自启
sudo systemctl start moltbot # 立即启动检查状态:
sudo systemctl status moltbot看到 active (running) 即表示成功。如果显示 failed,查看日志排查原因。
6. 防火墙
Ubuntu 自带 ufw,只开放必要端口:
sudo ufw allow OpenSSH # 确保 SSH 不会中断
sudo ufw enable # 启用防火墙
sudo ufw status # 确认规则千万别暴露 3000 端口
Moltbot 的 gateway 默认监听 3000 端口。这个端口绝对不能对公网开放,否则任何人都能跟你的 Bot 对话、消耗你的 API 额度。
详见 安全配置,里面有真实泄露案例。
Docker 方案(更简便)
如果不想手动配置 Node.js 版本和 systemd,Docker 可以简化流程:
# 安装 Docker
curl -fsSL https://get.docker.com | sh
sudo usermod -aG docker moltbot
# 重新登录使 docker 组生效
exit
su - moltbot
# 启动服务
docker run -d \
--name moltbot \
--restart unless-stopped \
-v ~/.moltbot:/root/.moltbot \
-e ANTHROPIC_API_KEY=sk-ant-xxxxx \
-e TELEGRAM_BOT_TOKEN=xxxxx \
ghcr.io/steipete/moltbot:latest--restart unless-stopped 相当于 systemd 的 Restart=on-failure,Docker 会自动处理重启。
需要完整的 Docker Compose 配置?参考 Docker 部署指南。
日志与排错
出现问题时先查看日志:
# systemd 方式
sudo journalctl -u moltbot -f
# Docker 方式
docker logs -f moltbot常见问题:
ANTHROPIC_API_KEY not set—.env文件路径有误,或EnvironmentFile配置不正确ECONNREFUSED— 网络问题,检查 DNS 和防火墙Permission denied— 文件权限问题,使用chown moltbot:moltbot修复- 不断重启 — 通常是 API Key 无效,去 Anthropic Console 确认
还没有 VPS?
新用户注册可享受优惠:
下一步
服务器部署完成后,建议继续完成以下配置:
- 安全配置 — VPS 部署必读
- Telegram 配置 — 将 Bot 连接到 Telegram
- 记忆系统 — 让 Bot 记住你的偏好
- 定时任务 — 设置定时消息推送