返回

亲测有效:gitlab runner 带你解锁自动部署

前端

现在,随着软件开发项目的不断复杂化,项目规模的不断扩大,以及对软件质量和交付速度的要求越来越高,自动部署已经成为了一种必不可少的工具。

那么,究竟什么是自动部署呢?

自动部署,顾名思义,就是利用自动化工具和技术,在代码发生变更后,自动将代码从代码仓库部署到服务器上的过程。自动部署可以帮助我们提高部署效率、降低部署出错的风险、减少人工介入的成本。

接下来,我们就以一个真实的项目为例,详细介绍如何在 gitlab runner 上实现自动部署。

第一步:在服务器安装 gitlab-runner 并关联仓库

首先,我们需要在服务器上安装 gitlab-runner,并将其与代码仓库关联起来。

安装 gitlab-runner 的步骤如下:

  1. 从 gitlab 官网下载 gitlab-runner 的安装包。
  2. 将安装包上传到服务器。
  3. 解压安装包。
  4. 按照提示进行安装。

安装完成后,我们需要将 gitlab-runner 与代码仓库关联起来。

关联代码仓库的步骤如下:

  1. 登录 gitlab。
  2. 找到需要自动部署的项目。
  3. 点击 "Settings" 选项卡。
  4. 在 "CI/CD" 部分,点击 "Runners" 选项卡。
  5. 点击 "Register a new runner" 按钮。
  6. 按照提示填写相关信息,包括 runner 的名称、、标签等。
  7. 点击 "Register" 按钮。

第二步:创建 gitlab-ci.yml 文件

接下来,我们需要在项目根目录下创建 gitlab-ci.yml 文件。

gitlab-ci.yml 文件是 gitlab runner 的配置文件,它定义了自动部署的流程。

在 gitlab-ci.yml 文件中,我们需要定义以下内容:

  • stages: 自动部署的阶段。
  • jobs: 每个阶段需要执行的任务。
  • scripts: 任务需要执行的脚本。

一个简单的 gitlab-ci.yml 文件示例如下:

stages:
  - build
  - deploy

build:
  script:
    - npm install
    - npm run build

deploy:
  script:
    - scp -r build/* user@host:/var/www/html

在这个示例中,我们将自动部署的过程分成了两个阶段:build 和 deploy。

在 build 阶段,我们会先安装依赖,然后构建项目。

在 deploy 阶段,我们会将构建好的项目文件拷贝到服务器上的指定目录。

第三步:运行 gitlab runner

在一切准备就绪之后,我们就可以运行 gitlab runner 了。

运行 gitlab runner 的步骤如下:

  1. 打开终端。
  2. 导航到 gitlab-runner 的安装目录。
  3. 执行以下命令:
gitlab-runner run

gitlab runner 会在后台运行,并监视代码仓库中的变更。一旦检测到代码变更,gitlab runner 就会自动执行自动部署的流程。

踩坑记录

在使用 gitlab runner 实现自动部署的过程中,我们可能会遇到一些问题。以下是一些常见的踩坑记录:

  • gitlab-runner 无法连接到代码仓库。
    • 检查 gitlab-runner 是否已正确安装和配置。
    • 检查代码仓库的 URL 是否正确。
    • 检查 gitlab-runner 是否有权访问代码仓库。
  • gitlab-runner 无法执行脚本。
    • 检查脚本是否有执行权限。
    • 检查脚本中的命令是否正确。
    • 检查脚本中引用的文件是否存在。
  • gitlab-runner 部署失败。
    • 检查服务器上的文件权限是否正确。
    • 检查服务器上的软件是否已正确安装和配置。
    • 检查脚本中的命令是否正确。

总结

通过本文,我们已经学习了如何在 gitlab runner 上实现自动部署。自动部署可以帮助我们提高部署效率、降低部署出错的风险、减少人工介入的成本。希望本文能够对您有所帮助。