PackHorizon-AI 部署

msdevhub 组织下的 PackHorizon-AI 项目,部署在 Azure 东亚区 VM 上,配有 HTTPS 和 GitHub Webhook 自动部署。

概述

PackHorizon-AI 是 msdevhub GitHub 组织下的一个项目(msdevhub/PackHorizon-Al),由 BNEF Bot 于 2026-03-24 完成从 clone、Azure VM 创建到生产部署的全流程自动化。项目使用 Nginx + PM2 运行,Let’s Encrypt 自动签发 SSL 证书,并配置了 GitHub Webhook 实现 push-to-deploy。

基础设施

属性
VM 名称PackHorizon
Azure 区域东亚 (East Asia)
VM 规格Standard_B2als_v2
公网 IP20.255.98.226
SSHssh -p 18822 azureuser@20.255.98.226
开放端口80, 443, 18822
域名pack.restry.cn
证书Let’s Encrypt(有效期至 2026-06-22)
Web 服务器Nginx + PM2

部署架构

GitHub Push (main)
    ↓
Webhook → https://pack.restry.cn/deploy
    ↓
VM: git pull → npm install → build → pm2 restart

Webhook 配置

  • Payload URL: https://pack.restry.cn/deploy
  • Content type: application/json
  • Secret: packhorizon-deploy-2026
  • Events: Just the push event
  • Deploy Key: ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFkGma9tspObVqDZb2/Qqphe7GQTZTLrcrY5Aup2ZF3A

修复记录

CORS 问题

部署后前端登录失败,原因是 Fastify CORS 插件的 origin 回调只允许 localhost 回环地址,生产域名 pack.restry.cn 被拒绝。修复方式:修改 origin 检查逻辑让非回环地址也通过。

管理员账号

时间线

  • 2026-03-24 17:25: Clone 项目到本地工作区
  • 2026-03-24 19:07: 创建 Azure VM(东亚区、Standard_B2als_v2)
  • 2026-03-24 19:19: 部署完成,HTTP 可访问
  • 2026-03-24 19:22: 配置 HTTPS(pack.restry.cn + Let’s Encrypt)
  • 2026-03-24 19:27: 修复 CORS 问题
  • 2026-03-24 19:55~20:08: 配置 GitHub Webhook 自动部署

相关页面