Next.js 中如何使用 CI/CD?

阅读时长 4 分钟读完

在现代 Web 开发中,使用 CI/CD 已经成为了一种标准的开发方式,它可以帮助开发者更快速、更可靠地构建和发布代码。在 Next.js 中,使用 CI/CD 可以使我们更加迅速地将新代码部署至生产环境中。本文将介绍如何在 Next.js 中使用 CI/CD,以及如何将 Next.js 应用程序发布至云端。

准备工作

在开始使用 CI/CD 之前,我们需要进行以下准备工作:

  1. 创建一个 Git 代码仓库,用于在云端托管我们的代码;
  2. 部署一个 Web 服务器,用于托管我们的 Next.js 应用程序。

在 GitLab 上设置 CI/CD

我们可以使用 GitLab 的 CI/CD 功能来完成自动化构建和部署 Next.js 应用程序的任务。我们可以通过以下步骤来配置 GitLab 的 CI/CD:

  1. 创建 .gitlab-ci.yml 文件。
-- -------------------- ---- -------
------ -----------

-------
  - -----
  - ----
  - ------

------
  ------
    - -------------

--------------
  - --- --

------
  ------ -----
  -------
    - --- --- -----

-----
  ------ ----
  -------
    - --- --- ----

-----------
  ------ ------
  -------
    - --- ------- -- ---
    - --- ------- ---------- ------

.gitlab-ci.yml 文件中包含了三个阶段:构建、测试和部署。我们首先在 before_script 阶段进行了 npm ci,以确保我们使用了最新的依赖项,并将其缓存至 node_modules/ 目录。在 build 阶段,我们运行了 npm run build,将 Next.js 应用程序构建成静态页面。在 test 阶段,我们运行了 npm run test,以确保代码的质量。在 production 阶段,我们安装了 now 工具,并且使用 now --token $NOW_TOKEN --prod 将应用程序部署至云端。

  1. 获取 NOW_TOKEN

我们需要获取一个 NOW_TOKEN,以便在运行 now 命令时进行身份验证。要获取 NOW_TOKEN,我们可以在 now 官网 中进行创建。

  1. NOW_TOKEN 添加至 GitLab 项目中。

我们需要将 NOW_TOKEN 添加至 GitLab 项目中的 Settings > CI/CD 页面中。在 Secret variables 部分,我们可以添加一个名为 NOW_TOKEN 的变量,并将其设置为我们在第二步中获取的值。

  1. 推送代码至 GitLab。

将代码推送至 GitLab 后,我们可以在 GitLab 项目页面中找到 CI/CD 管道。我们可以使用 CI/CD 管道来追踪构建和部署任务的状态,并查看输出日志以确认是否成功部署应用程序。

在云端上托管 Next.js 应用程序

在我们完成了 CI/CD 的设置后,我们还需要将应用程序部署至云端。在 Next.js 中,有多个云和托管服务可供选择,例如 Zeit NowHeroku 等。

这里我们以 Zeit Now 为例进行介绍,其它云和托管服务所需步骤类似。以下是在 Zeit Now 上托管 Next.js 应用程序的步骤:

  1. 安装 now

在命令行中运行以下命令:

  1. 构建 Next.js 应用程序。

在命令行中运行以下命令来构建 Next.js 应用程序:

  1. 部署应用程序至云端。

使用 now 命令将应用程序部署至云端。在命令行中,运行以下命令:

now 命令会将应用程序上传至云端,并返回一个可用于访问应用程序的 URL。

结论

本文介绍了如何在 Next.js 中使用 CI/CD 进行自动化构建和部署,并演示了如何将 Next.js 应用程序发布至云端。我们可以使用类似 GitLab、Zeit Now 等软件和服务来帮助我们更加高效地开发和部署应用程序。希望这篇文章可以帮助到有需要的读者。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/67123b0cad1e889fe2039701

纠错
反馈