5分钟内将 Next.js 全栈项目部署到 EdgeOne Pages

您知道吗?EdgeOne Pages 提供 Next.js 全栈部署支持。目前支持以下 Next.js 功能:
Next.js功能 | 支持状态 |
App Router | ✅ |
Pages Router | ✅ |
服务器端渲染 (SSR) | ✅ |
静态站点生成 (SSG) | ✅ |
增量静态再生成 (ISR) | ✅ |
React服务器组件 | ✅ |
流式响应 | ✅ |
路由处理程序 | ✅ |
要使用 EdgeOne Pages 部署您的 Next.js 全栈项目,我们提供了三种部署途径。
三种快速开始方式
途径 | 适用情况 |
A. 模板 | 新项目,零配置 |
B. 导入Git仓库 | 已在线上Git |
C. EdgeOne CLI | 高级工作流 |
途径A:通过 EdgeOne Pages Next.js 模板部署
使用 EdgeOne Pages 模板部署是从头开始构建和部署 Next.js 项目的最快方法。
您可以在控制台中点击"创建项目"
并选择"从模板开始"
。在这里,您可以选择 Next.js 的基础模板或基于Next.js 的各种主题模板。
Pages 会将模板克隆到您的私有仓库并进行构建。构建完成后,您可以从仓库克隆代码进行开发。
路径 B:从 Git 存储库导入 Next.js 项目
EdgeOne Pages 为首次使用的用户提供清晰的逐步指导,帮助用户完成线上 Git 仓库认证和网站部署。
首先,在浏览器中访问 EdgeOne Pages 控制台。
接下来,选择您的在线仓库并按照步骤完成认证:
完成 Git 认证后,选择您的代码仓库开始部署。您可以在此阶段配置环境变量。
构建和部署完成后,您可以在"项目设置
"面板中查看和修改构建设置。
途径C:使用 EdgeOne CLI 直接上传
您还可以不依赖 Git 仓库进行部署。这意味着您可以直接从 IDE 快速便捷地部署和更新项目。
EdgeOne 提供了功能丰富的 CLI,允许您与您的账户交互,您可以通过 EdgeOne CLI 直接部署。具体步骤如下:
1. 创建Next.js项目
首先,创建您的 Next.js 项目并进入到项目目录。有关创建 Next.js 的详细说明,请参阅 Next.js 文档。
npx create-next-app@latest
cd <project>
2. 初始设置
如果您还没有安装,请全局安装 EdgeOne CLI:
npm install -g edgeone
如果这是您在项目中首次使用 EdgeOne CLI,请先运行"edgeone pages
init
"。
edgeone pages init # 选择"全球"区域
执行后,系统会提示您登录,并询问是否创建"Edge Functions"和"Node Functions"。这些是 EdgeOne Pages 全栈支持的边缘函数和集中式 Node 函数。您可以在这里实现后端功能。更多函数信息和使用说明,请参阅相关教程。
如果这不是您在项目中首次使用CLI,您可以直接登录。
edgeone login # 选择"全球"区域
3. 构建和部署
我们已支持大多数流行框架自动部署。执行"edgeone pages deploy -n <name>"将自动处理构建和部署过程。
初始部署时,运行 link 命令。出现提示时,输入 <projectName>。EdgeOne Pages 将自动部署您当前的项目。
edgeone pages link
或者,您可以使用"link
<projectName>
"链接到现有项目,然后使用deploy
命令部署。EdgeOne Pages 将更新您的线上项目。
edgeone pages link <projectName>
edgeone pages deploy
有关EdgeOne CLI的详细说明,请参阅教程。
本地开发和调试
无论您如何创建项目,都可以使用 EdgeOne CLI 快速方便地调试 Next.js 项目中的后端服务。
CLI 集成了调试功能,用于本地调试后端服务。运行"edgeone pages dev
",CLI 将前端和后端服务都映射到 8088 端口,便于调试您的项目。
通过 CLI 提供的开发环境,开发者可以直接通过"localhost:8088/<function-path>
"调试 Node 函数和边缘函数。
结论
无论您使用上述哪种部署方法,您现在都有了一个运行在 EdgeOne Pages 上的 Next.js 应用程序,这个程序全球分布、自动启用HTTPS。
从这里开始,无惧迭代:分支预览保持实验安全,即时回滚在几秒钟内撤消错误,推送、预览、部署——然后去喝杯咖啡,系统会为您完成繁重的工作。