温馨提示×

ubuntu gitlab持续集成实践

小樊
49
2025-07-09 22:17:49
栏目: 智能运维

在Ubuntu上配置GitLab以实现持续集成(CI)和持续部署(CD)涉及多个步骤。以下是一个详细的实践指南,帮助你设置一个基本的CI/CD管道。

安装GitLab Runner

首先,你需要在Ubuntu系统上安装GitLab Runner。以下是安装步骤:

  1. 更新包列表

    sudo apt update 
  2. 安装依赖包

    sudo apt install curl openssh-server policycoreutils-python 
  3. 下载并安装GitLab Runner

    curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.deb.sh | sudo bash 
  4. 赋予执行权限并安装

    sudo chmod +x /usr/local/bin/gitlab-runner 
  5. 创建GitLab CI用户

    sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash 
  6. 安装并启动GitLab Runner

    sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner sudo gitlab-runner start 
  7. 注册GitLab Runner: 在GitLab的管理界面中,依次进入 Settings - CI/CD - Runners,点击 Register a Runner。按照提示输入GitLab实例的URL和注册令牌,选择执行器(如 shell),然后保存。

配置 .gitlab-ci.yml 文件

在项目的根目录下创建或编辑 .gitlab-ci.yml 文件,定义CI/CD流程。以下是一个简单的示例:

stages: - build - test - deploy build_job: stage: build image: node:16 script: - npm install - npm run build artifacts: paths: - public/ test_job: stage: test script: - npm install - npm run test artifacts: paths: - coverage/ deploy_job: stage: deploy only: - master script: - scp -r public/* user@server:/path/to/deploy/ - sudo /usr/local/nginx/sbin/nginx -s reload 

自动化测试

GitLab CI/CD可以自动化执行测试用例,确保代码质量。在每次提交代码后,GitLab CI/CD会运行测试用例,并将测试结果通知开发人员。

代码审查

在Merge Request创建时,GitLab CI/CD可以自动执行代码审查任务,如静态代码分析、代码覆盖率检查等,帮助开发人员提高代码质量。

环境变量和机密信息

有些敏感信息(比如数据库密码、API密钥)肯定不能直接写在配置文件里,这时候就得用到GitLab CI的环境变量功能了。在项目设置里添加环境变量:

variables: DB_PASSWORD: "your_secret_password" 

监控CI/CD流程

登录GitLab管理界面,进入 CI/CD - Pipelines,可以查看当前CI/CD流程的状态和结果。

优化CI/CD流程

为了提高CI/CD流程的效率和速度,可以采取以下措施:

  • 使用并行构建
  • 优化构建脚本
  • 减少不必要的构建步骤

通过以上步骤,你可以在Ubuntu系统上成功配置GitLab的持续集成系统。根据具体需求,你可以进一步自定义 .gitlab-ci.yml 文件,添加更多的任务和执行步骤。

0