News

在Google Cloud VM上部署AI Agent:完整设置指南

在Google Cloud VM上部署AI Agent:完整设置指南

要让AI Agent实现全天候稳定运行,将其部署到云虚拟机(VM)是一个理想的选择。本文将详细介绍如何在Google Cloud Platform (GCP) 上设置一个AI Agent,并将其连接到Telegram,确保其可靠运行。

为何选择云VM托管?

将AI Agent托管在云VM上而非个人电脑,主要有以下几大优势:

  • 持续在线计算: 云VM可以24/7不间断运行,即使是GCP的免费层也足以满足个人项目的需求。
  • 静态IP选项: 通过Cloudflare隧道,可以轻松获得一个静态公共URL。
  • 环境完全控制: 你拥有对虚拟机操作系统的完整控制权,可根据需要自由配置。
  • 无厂商锁定: 本质上只是一个Linux虚拟机,迁移到其他云平台相对容易。

本指南将以OpenClaw Agent为例,演示整个部署过程。

准备工作

  • 一个Google Cloud账户(免费层符合要求)。
  • 一个Telegram账户(用于创建BotFather机器人)。
  • 域名(可选,Cloudflare隧道可处理公共URL)。

第一步:创建虚拟机

1. 访问 console.cloud.google.com

2. 导航至 Compute EngineVM 实例

3. 点击 创建实例

配置设置:

名称: openclaw-agent
区域: us-central1 (爱荷华州) — 符合免费层要求
可用区: us-central1-a
机器类型: f1-micro (1 vCPU, 0.6 GB — 符合免费层要求)
启动磁盘: Debian 12 (Bookworm)
启动磁盘大小: 10 GB
防火墙: ✅ 允许 HTTP 流量, ✅ 允许 HTTPS 流量

费用: 使用免费层,此配置每月费用为 $0.00。免费试用期结束后,大约为每月 $7。

点击 创建,等待约60秒,虚拟机将启动完毕。

第二步:SSH连接到VM

可以通过两种方式连接到你的虚拟机:

1. 使用本地终端: 确保已安装 Google Cloud SDK。在终端中执行:

gcloud compute ssh openclaw-agent --zone=us-central1-a

2. 使用Google Cloud控制台的SSH按钮: 这是基于浏览器的SSH,无需在本地进行密钥设置。

第三步:安装Node.js 18+

连接到VM后,开始安装Node.js:

# 更新包
sudo apt update && sudo apt upgrade -y

# 安装 nvm (Node Version Manager)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# 重新加载 shell
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"

# 安装 Node.js 20 (LTS)
nvm install 20
nvm use 20
node --version  # 验证版本,应显示 v20.x.x

# 设置为默认版本
nvm alias default 20

第四步:安装OpenClaw

Node.js安装完成后,全局安装OpenClaw:

# 全局安装 OpenClaw
npm install -g openclaw

# 验证安装
openclaw --version

# 初始化 (根据交互式提示操作)
openclaw init

在初始化过程中,你需要完成以下配置:

  • openclaw.ai 创建账户(有免费层)。
  • 连接你的Telegram Bot Token(参见第五步获取)。
  • 设置你的默认AI模型(如 MiniMax, Anthropic 等)。

第五步:创建你的Telegram Bot

1. 打开Telegram,搜索 BotFather

2. 发送命令 /newbot

3. 按照提示,为你的机器人设置名称和用户名。

4. 复制生成的API Token(格式类似于 123456789:ABCdefGhIJKlmNoPQRsTUVwxyZ)。请妥善保管此Token,稍后会用于OpenClaw配置。

第六步:配置环境变量

为了安全起见,建议为敏感信息(如API Token)创建一个 .env 文件来存储环境变量。这是管理OpenClaw Agent密钥的最佳实践。

# 创建一个 .env 文件用于存储密钥
↗ 阅读原文