用 AI Agent + DevKit 把 2048 小游戏部署上华为云:沙箱与 ECS 双路实战
最近参加了华为云开放能力线上闯关挑战,要求用 AI Agent 借助 HuaweiCloud DevKit 把一个 2048 游戏部署上线,分两步:先沙箱部署,再 ECS 持久化部署。整个过程没有打开一次云控制台,全靠命令行和 API 完成,记录一下实战过程和踩过的坑。
作品:单文件 2048
游戏本体刻意做成零依赖的单文件 index.html:4×4 棋盘、方向键/WASD/触屏滑动、合并计分、最高分 localStorage 持久化、无步可走时判定结束。单文件的好处是部署到任何静态托管都不用改路径,后面两个部署环节都省了很多事。
第一步:沙箱部署
原计划走 DevKit 的沙箱编排通道,结果连续报 HD.99003001: No available node pool——官方编排绑定的环境池无可用节点。绕行方案是直连自己已有的 CodeArts 沙箱环境:镜像里其实自带了 DevBridge(在 /root/runtime/devbridge/,只是不在 PATH 里),补上平台注入的 DevBridge Key 后隧道就通了,Nginx 监听 3000 端口托管页面,拿到 *.devbridge-s2.hwtunnel.com 的公网域名,有效期 72 小时。
提交时还有一个坑:官方提交脚本只给 ECS 步骤带 X-HW-PROJECT-ID 头,但服务端现在要求沙箱步骤也带,不带就回 400 PROJECT_ID_MISSING。给本地脚本打了个小补丁,两步都带上项目和区域头后提交通过,1000 积分到手。
第二步:ECS 持久化部署
用 KooCLI 全程 API 操作:建 VPC、子网、安全组(放行 80 和管理用 22),再创建按量 ECS 并绑定 EIP,用户数据用 cloud-init 一键装 Nginx 并把页面发布到 /hc-activity/index.html。
规格选择最能说明"云上和文档是两回事":活动建议的 1 核 2G 在华北-北京四(cn-north-4)要么售罄、要么已下架、要么根本不向新购开放,逐个试下来最小可买的是 c9.large.2(2 核 4G)。好在活动只校验公网地址可达,规格不影响积分认定,2000 积分正常发放。
收尾
任务完成后第一件事是释放资源:ECS、EIP、云盘逐项核查删除干净,避免按量计费继续跑。作品代码也推送到了 GitCode 仓库,并发布到了开发者作品展览馆。
小结
- AI Agent + DevKit/KooCLI 的组合确实能把"开通、部署、提交、清理"全流程压进命令行里;
- 云服务的真实约束(节点池、规格售罄、接口字段变化)都得靠实测逐个排掉,文档只能当参考;
- 静态单文件 + cloud-init 是这类小作品上线最省事的组合。
- 点赞
- 收藏
- 关注作者
评论(0)