只有平台能运行所接收的项目,部署才有意义。IaGenify SDK 0.3.1 在创建托管项目时明确指定运行环境:静态网站或 Edge 代码。
两类项目,两条清晰路径
静态网站可以使用现有框架构建,再将生成的文件发布到 `runtime: "static"` 主机。文档支持 HTML、Vite、React 单页应用、Vue、Angular、Astro 和 Next.js 静态导出。平台直接提供这些文件,无需启动常驻 Node.js 进程。
const site = await api.hosts.create({
label: "Product website",
runtime: "static",
framework: "vite",
});
await site.deploy({ files: "./dist" });请求处理程序则选择 `runtime: "edge"`,搭配 Worker 或 Hono。部署内容是在 Edge 运行的处理程序,不依赖常驻 Node.js 服务器。
const endpoint = await api.hosts.create({
label: "Status endpoint",
runtime: "edge",
framework: "hono",
});
await endpoint.deploy({ code: source });明确边界也是 API 的一部分
Next.js 静态导出与需要服务端渲染的 Next.js 应用并不相同。前者可以作为文件发布;后者需要本服务并未承诺提供的常驻服务器。Express、Fastify 和 Nest 同样需要持久运行环境。
SDK 会在上传前检查运行环境与框架是否匹配。不支持的请求会得到明确拒绝,而不会生成一个无法服务应用的地址。
本地构建,发布构建产物
团队可以继续使用熟悉的构建流程:例如 Vite 生成 `dist`,再由 SDK 发布这些文件;Edge 项目则发布处理程序。平台不会假设自己能安装任意依赖或持续运行通用进程。
这种区分也让自动化更清楚:工作流可以构建并发布网站,另一个 Edge 端点负责轻量请求。
部署 API 应在接受项目之前说明它能运行什么。
给开发者一个更具体的承诺
SDK 0.3.1 让 IaGenify 托管能力更加明确:静态网站和 Edge 处理程序各有直接的部署路径,创建时即可看到服务边界。
常见问题
可以部署 Express 或 Fastify 服务器吗?
不可以。文档支持静态文件和 Edge 处理程序,不提供常驻 Node.js 服务器。
可以发布 Next.js 网站吗?
可以,但必须构建为静态导出。服务端渲染需要持久运行环境。
SDK 会替我构建项目吗?
文档流程是在本地完成构建,然后发布生成的文件,例如 `./dist`。
`runtime` 字段有什么作用?
它声明主机是提供静态文件还是执行 Edge 处理程序,并据此验证框架配置。