返回

Jenkins + Github + Nginx 实现前端自动化最全指南,轻松构建高效 CI/CD 流程!

前端

前言

前端自动化算是一个老生常谈的问题?那么什么是自动化呢?通俗来说,自动化是想让开发者可以专注于开发,剩下的构建与部署可以形成一套流程和规范,不需要我们去关心这些问题。

从图上我们可以看到,这是一个比较完整的流程,从提交代码到最后发布上线,详细的步骤还是比较多的,如果我们不进行自动化,需要花费大量的时间去完成这些事情。

当然,也有很多同学可能会觉得用不着这么麻烦,直接手动部署就好了。但是,随着项目的越来越复杂,手动部署就会变得越来越困难,而且容易出错。

因此,前端自动化是很有必要的,它可以帮助我们:

  • 提高开发效率
  • 减少错误
  • 确保代码质量
  • 方便团队协作
  • 实现持续集成和持续交付

准备工作

在开始之前,我们需要先准备一些东西:

  • 一个 Jenkins 实例
  • 一个 Github 仓库
  • 一个 Nginx 服务器
  • 一个前端项目

配置 Jenkins

  1. 安装 Jenkins

Jenkins 是一个持续集成工具,它可以帮助我们自动构建和测试代码。

  1. 创建一个新作业

在 Jenkins 中,创建一个新的作业,并选择“构建一个自由风格的软件项目”作为项目类型。

  1. 配置作业

在作业配置页面中,我们需要设置一些参数:

  • 项目名称: 这个名称可以随意取,但要确保它能反映项目的名称。
  • 源代码管理: 选择“Git”。
  • Git 仓库 URL: 输入 Github 仓库的 URL。
  • 凭据: 如果需要,可以在这里添加凭据,以便 Jenkins 可以访问 Github 仓库。
  • 构建触发器: 选择“Github”。
  • Github 项目: 选择 Github 仓库。
  • 分支规范: 输入要构建的分支名称。
  • 构建步骤: 在这里,我们需要添加构建步骤。对于前端项目,我们通常需要以下步骤:
    • 安装依赖项:使用 npm install 命令安装项目所需的依赖项。
    • 构建项目:使用 npm run build 命令构建项目。
    • 测试项目:使用 npm test 命令测试项目。
  • 构建后操作: 在这里,我们可以添加构建后操作。对于前端项目,我们通常需要以下操作:
    • 部署项目:使用 scp 命令将构建后的项目部署到 Nginx 服务器。
  1. 保存作业

在配置完成后,点击“保存”按钮保存作业。

配置 Github

  1. 创建一个新仓库

在 Github 中,创建一个新的仓库。

  1. 添加 Jenkinsfile

在仓库中添加一个名为“Jenkinsfile”的文件,并输入以下内容:

pipeline {
    agent any

    stages {
        stage('Build') {
            steps {
                checkout scm
                sh 'npm install'
                sh 'npm run build'
            }
        }

        stage('Test') {
            steps {
                sh 'npm test'
            }
        }

        stage('Deploy') {
            steps {
                sh 'scp -r build/* user@server:/var/www/html'
            }
        }
    }
}
  1. 提交代码

将 Jenkinsfile 和其他代码提交到 Github 仓库。

配置 Nginx

  1. 安装 Nginx

Nginx 是一个轻量级的 Web 服务器,它可以用来部署前端项目。

  1. 创建一个新的虚拟主机

在 Nginx 配置文件中,创建一个新的虚拟主机,并配置以下参数:

  • server_name: 输入域名或 IP 地址。
  • root: 输入前端项目的根目录。
  • index: 输入默认的索引文件。
  1. 重启 Nginx

在配置完成后,重启 Nginx 服务器。

测试自动化

现在,我们可以测试一下自动化是否正常工作。

  1. 在 Github 上提交代码

在 Github 上提交代码,触发 Jenkins 构建作业。

  1. 查看 Jenkins 构建结果

在 Jenkins 中,查看构建作业的结果。如果构建成功,那么前端项目就会被部署到 Nginx 服务器上。

  1. 访问网站

在浏览器中输入域名或 IP 地址,访问网站。如果网站能够正常访问,那么自动化就配置成功了。

结语

通过这篇指南,您已经学会了如何使用 Jenkins、Github 和 Nginx 实现前端自动化。这可以帮助您提高开发效率,减少错误,确保代码质量,方便团队协作,并实现持续集成和持续交付。