【Gitlab】CICD流水线自动化部署教程

第一步,准备 GitLab 仓库

这个不用多说,得先保证你的项目已经托管在一个 GitLab 仓库中。


第二步,定义 `.gitlab-ci.yml` 文件

在你的项目根目录中创建一个 `.gitlab-ci.yml` 文件。这个文件将定义所有 CI/CD 的工作流程,包括构建、测试和部署等步骤

例:


第三步,编写构建脚本

这一步的内容根据自己实际需求来写,可以参考以下配置

XML 复制代码
variables:
  NODE_OPTIONS: "--max-old-space-size=4096"  #这个地方为什么写这个,是因为我部署的服务器分配的内存太少了而报错,所以这里根据你们实际需要
# 定义流水线阶段
stages:
  - build
 

# 配置缓存节点模块提升性能
cache:
  paths:
    - node_modules/

# 构建作业
build_job:
  stage: build
  image: node:latest
  script:
    - echo "Starting build process" # 断点: 开始构建过程
    - npm install
    - npm run build-only # 请根据你的情况视情况更改为正确的构建命令,就是你本地里面的打包命令
    - echo "Starting deployment"
    - echo "Current working directory is:"
    - pwd
    - cp -r dist/* /var/www/chatcs/  # 根据你自己的目录,这是要存放到的目录
  
  artifacts: # 存档构建结果,用于后续步骤
    paths:
      - dist/
  only:
    - main # 只有 main分支的提交会触发构建-根据你的需要
  tags:
    - chatcs # 假设标签是 chatcs ,这个也要根据你的需要
  
    

第四步,在你要部署的服务器上,安装GitLab Runner

特别提醒一句,以下的配置均在服务器中,这个服务器一定先把该安装的依赖安装好,比如你是前端,先把node下载安装好。

4.1 安装地址: GitLab Runner 官方文档

cpp 复制代码
安装 GitLab Runner 可以通过以下步骤进行:

1. 首先你需要连接到你的 Linux 服务器,在服务器上打开终端。

2. 在终端中,使用管理员权限(比如 sudo)执行以下命令来安装 GitLab Runner:
   - Debian/Ubuntu 系统:
    
     // 安装依赖
     sudo apt-get update
     sudo apt-get install -y curl wget gnupg2

     // 安装 GitLab Runner
     curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
     sudo apt-get install gitlab-runner
     
   - CentOS/RHEL 系统:
     
     //安装依赖
     sudo yum install curl policycoreutils-python openssh-server

     //安装 GitLab Runner
     curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.rpm.sh | sudo bash
     sudo yum install -y gitlab-runner
     

4.2 注册 GitLab Runner

cpp 复制代码
注册命令: gitlab-runner register

这一步容易出问题,最容易出问题的是选择执行方式. 你可以在配置文件 `config.toml` 中设置 Runner 的执行方式,例如使用 Docker、Shell 、ssh等,以确保 Runner 能够正确地执行你的 CI/CD 任务。

简单快捷的方式是: shell

在注册过程中,系统将提示你输入 GitLab 的 URL、项目的注册令牌等信息。你可以在项目的 `Settings` --> `CI/CD` --> `Runner` 部分找到所需的注册令牌。

4.3 确保 Runner 处于活跃状态

确保你注册的 Runner 是活跃的,并且配置正确。在 GitLab Runner 的配置文件(通常位于 `/etc/gitlab-runner/config.toml`)中,确认 Runner 的配置,比如它应该指向正确的 GitLab 实例,且 Runner 标签符合项目的 `.gitlab-ci.yml` 文件中定义的要求。

4.4 启动 Runner

你可以使用以下命令启动它:

cpp 复制代码
gitlab-runner start

确认 Runner 正在运行后,回到 GitLab 项目的 CI/CD 设置中的 Runners 部分。等待几秒钟,你应该能够看到 Runner 的状态变为绿色,这意味着它已准备好接收工作。


5.验证可行性

至此,配置完成,你可以在本地git push后查看部署的网址是不是最新的代码。

相关推荐
大树881 小时前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠1 小时前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质2 小时前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工3 小时前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智3 小时前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 小时前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉4 小时前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
dayuOK63074 小时前
写作卡壳怎么办?我的“5分钟启动法”
人工智能·职场和发展·自动化·新媒体运营·媒体
AC赳赳老秦5 小时前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj5 小时前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes