乐于分享
好东西不私藏

OpenClaw 在 Azure 上的极速部署路径:从托管容器到环境自动化交付 | 微软技术栈

OpenClaw 在 Azure 上的极速部署路径:从托管容器到环境自动化交付 | 微软技术栈

继OpenClaw容器化部署方案后,Azure近日又发布了其基于虚拟机的自动化交付新路径,进一步丰富了该项目的云端部署选项。

微软中国战略孵化器(CSI, Microsoft Greater China Strategic Incubator) 作为连接微软核心技术能力与创新生态的重要桥梁,不仅为入孵企业提供 Azure 试用资源,更全方位协助企业对接微软全球技术专家网络、获取前沿架构指导及商业落地支持。我们致力于通过深度赋能,帮助创新团队在安全、稳定且可扩展的 Azure 平台上,将智能体创意快速转化为具有竞争力的商业成果。

如果您计划构建或测试相关应用,欢迎加入孵化器,获取从技术验证到市场拓展的一站式加速支持。

继上一篇“托管容器”方案之后,我们已经将捕获到的“野生龙虾”(OpenClaw)精准装入规格统一、环境可控的“标准容器”中,实现了快速托管。(从本地到云端:Moltbot 在 Azure 上的快速部署 | 微软技术栈

而本文将介绍第二条更直接、也更具完整控制权的路径。如果说容器化方案更像是为这只“龙虾”准备好了一个标准化、开箱即用的饲养箱,那么基于 Azure 虚拟机的环境自动化交付方案,则更像是为它搭建一套可按需调节、可全程掌控的饲养环境。

本文将展示,如何跳过复杂的容器流水线,通过声明式模板,在 5 分钟内交付一套完整的 OpenClaw 运行环境

01

衔接:

从“平台托管”到“环境交付”

在上一篇文章中,我们通过 Azure Web App for Containers 走通了容器化上云之路。那条路线的核心在于“轻量化”,更适合追求标准化交付与免运维体验的团队。

然而在实际的 PoC(概念验证)或深度开发场景中,开发者往往还有另一种诉求:能否直接提供一台已经配置完成的主机?

这种需求通常来自以下几点:

    • 希望以更直观的方式查看日志

    • 希望拥有灵活的 SSH 管理权限

    • 希望降低前置配置门槛,尽快获得可运行环境

因此,今天我们介绍第二条路径:基于 Azure 虚拟机(VM)的环境自动化交付方案。如果说容器方案展示的是 Azure 的“平台能力”,那么本篇展示的则是其环境交付效率。

02

决策模型:

为什么你需要第二种方式?

并非所有阶段都适合直接上容器。虚拟机方案在以下场景中,具有不可替代的价值:

01

极致低门槛

无需经历 Docker 镜像构建、ACR 推送以及 WebSocket 适配等流程,只需填写声明式参数,即可获得可用实例。

02

完整控制权

方案提供 SSH 登录能力,支持在系统层面进行细粒度排障、日志分析以及内核级配置管理。

03

多维交付场景:

  • 对外演示:可以快速为客户搭建独立演示环境,更完整地展示产品全貌。

  • 企业内供:企业 IT 或开发团队可借助这一方案,为内部员工统一提供标准化的云端运行环境。这样既能避免员工将 OpenClaw 直接安装在本地环境所带来的管理盲点、数据外泄风险和环境碎片化问题,也能实现更安全、更合规的“按需取用”。

03

技术拆解:

支撑自动化落地的三项能力

Azure 通过自动化模板,将原本分散的主机初始化过程,收敛为一组标准化的“原子操作”:

01

完整运行底座

交付预装 Ubuntu 的环境,同时包含网络入口、持久化存储,以及 OpenClaw 运行所需的全部依赖。

02

自动化模板部署

资源创建、环境初始化、HTTPS 证书准备等环节,统一封装在部署模板中,真正实现基础设施即代码(IaC)

03

安全管理边界

采用“SSH 验证 + 动态 Token”的访问逻辑,在保障高效交付的同时,也确保管理入口安全可控。

04

部署前置准备

在点击“一键部署”之前,请先确认以下准备工作已经完成:

1

基础环境

  • Azure 订阅:需要拥有创建 VM 和网络资源的权限。

  • SSH 密钥对:用于安全登录。如果你还没有密钥,请根据操作系统参考下方步骤生成。

Windows 用户生成密钥

# 生成密钥对ssh-keygen -t ed25519 -C "openclaw-azure"br# 查看并复制公钥内容Get-Content $env:USERPROFILE\.ssh\id_ed25519.pub

macOS / Linux 用户生成密钥

在终端执行:

# 生成密钥对ssh-keygen -t ed25519 -C "openclaw-azure"br# 查看并复制公钥内容cat ~/.ssh/id_ed25519.pub

2

模型参数(可选

如果您希望部署完成后立即接入 Azure OpenAI,请准备以下信息:

  • Azure OpenAI 终结点(Endpoint)

    例如 https://your-resource.cognitiveservices.azure.com/

  • 模型部署名称 (Deployment Name):例如 gpt-4o

  • API 密钥 (API Key)

[!IMPORTANT]

关键规则:上述三个参数要么全部填写,要么全部留空,如果不填写仍可部署 OpenClaw,但是无法实现对话,需要后期进入虚拟机手动设置。

05

5 步完成自动化部署

1.开启部署入口:点击 Deploy to Azure 按钮并登录您的账户。

2. 规划资源组策略:建议按环境命名资源组,例如 rg-openclaw-poc,便于成本追踪和资源生命周期管理。

3. 填写部署参数:

  • vmName:自定义虚拟机名称,如 openclaw-prod-001

  • adminUsername:SSH 登录用户名(默认 azureuser)

  • sshPublicKey:粘贴上一步获取的 .pub 文件内容(公钥)

  • vmSize:虚拟机规格,如 Standard_B2as_v2

  • 模型参数:填入上文准备的可选模型信息。

4. 提交初始化:点击查看 + 创建,等待资源(特别是扩展 openclaw-bootstrap)显示部署成功。

5. 记录部署输出:在部署页面的输出 (Outputs) 项中,保存 vmPublicFqdn(虚拟机公网域名)。

06

访问路径:

先主机,后网页

与容器方案不同,虚拟机路线强调 “管理优先”。

第一步:SSH 登录虚拟机

Windows (PowerShell):

ssh -i "$env:USERPROFILE\.ssh\id_ed25519" azureuser@<您的vmPublicFqdn>

macOS / Linux:

ssh -i ~/.ssh/id_ed25519 azureuser@<您的vmPublicFqdn>

第二步:获取 Web 控制台地址

登录成功后,在远程终端执行:

openclaw-browser-url

系统将输出类似链接:Dashboard URL: https://your-hostname/#token=...。请复制并在浏览器中打开。

第三步:设备配对授权

如果浏览器提示 pairing required,请保持页面打开,回到 SSH 终端执行:

openclaw-approve-browser

执行完成后刷新浏览器页面即可完成登录。

07

自动化进阶:

使用 Azure CLI 部署

对于习惯脚本化操作的团队,可以直接通过命令行完成部署:

1. 登录并创建资源组az loginaz group create --name rg-openclaw-sea --location southeastasiabr2. 执行部署az deployment group create \  --name openclaw-sea-20260307 \  --resource-group rg-openclaw-sea \  --template-uri [https://raw.githubusercontent.com/hanhsia/openclaw-azure-deploy/main/azuredeploy.json](https://raw.githubusercontent.com/hanhsia/openclaw-azure-deploy/main/azuredeploy.json) \  --parameters \    vmName=openclaw-vm-01 \    adminUsername=azureuser \    sshPublicKey="ssh-ed25519 AAAA..." \    vmSize=Standard_B2as_v2 \    azureOpenAiEndpoint="[https://your-resource.cognitiveservices.azure.com/](https://your-resource.cognitiveservices.azure.com/)" \    azureOpenAiDeployment="gpt-4o" \    azureOpenAiApiKey="your-key"br3. 查看输出az deployment group show \  --name openclaw-sea-20260307 \  --resource-group rg-openclaw-sea \  --query properties.outputs

08

常见问题排查(FAQ)

01

SSH 报错 Permission denied (publickey)

  • 原因:私钥与公钥不匹配,或未指定私钥路径。

  • 解决:确保 .pub 内容与本地私钥是一对。登录时通过 -i 参数明确指定私钥路径。

02

SSH 报错 UNPROTECTED PRIVATE KEY FILE

  • 原因:私钥文件权限过宽。

  • 解决

Mac/Linux:

chmod 600 ~/.ssh/id_ed25519

Windows:

$Key = "$env:USERPROFILE\.ssh\id_ed25519"icacls $Key /inheritance:ricacls $Key /remove:g "Users""Authenticated Users""Everyone"icacls $Key /grant:r "${env:USERNAME}:R"

03

SSH 报错 REMOTE HOST IDENTIFICATION

 HAS CHANGED!

  • 原因:主机重建导致指纹变更。

  • 解决:清理旧记录:ssh-keygen -R

04

无法找到或手动输入 Token?

  • 解决:切勿猜测。必须 SSH 登录主机后运行 openclaw-browser-url 获取完整链接。

05

浏览器显示 pairing required

  • 解决:在 SSH 终端执行 openclaw-approve-browser 授权当前设备。

06

访问报错 502 Bad Gateway

  • 原因:服务尚未完全启动(需等待 1-2 分钟)或服务异常。

  • 排查:执行 sudo systemctl status openclaw-gateway caddy 查看状态。

07

无法连接虚拟机(Timed Out)

  • 解决:检查 Azure 门户中 VM 是否处于 Running 状态,并在 网络 (Networking) 设置中确认已允许

09

总结:

两条路径,按需选择

无论是追求免运维、标准化交付的容器化托管方式,还是强调完整控制权、快速交付与灵活排障的虚拟机自动化环境方案,本质上都服务于同一个目标:让 OpenClaw 能以更适合业务阶段的方式,更快落地到 Azure 上。

Azure 的差异化价值在于:它不仅提供部署的终点,也提供了一条能够随着业务成熟度持续演进的路径。

10

立即行动

让复杂的环境初始化隐藏在模板之后,让您的工作从“服务已经可用”开始。

微软中国战略孵化器

  About  CSI

微软中国战略孵化器(CSI, Microsoft Greater China Strategic Incubator)是由微软联合顶尖投资机构共同打造的战略级孵化平台和创新生态,致力于推动创业企业高速成长,成就卓越梦想。通过整合微软的前沿技术与全渠道资源,我们为入孵企业提供涵盖技术研发、商业拓展、生态链接及全球市场推广的全方位深度支持。

点击“阅读原文”,加入微软孵化器: