温馨提示×

GitLab在Debian上的持续集成/持续部署实践

小樊
50
2025-09-07 12:02:41
栏目: 智能运维

以下是在Debian上实践GitLab持续集成/持续部署(CI/CD)的核心步骤:

一、环境准备

  1. 安装GitLab

    • 使用官方仓库安装:
      curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash sudo apt install gitlab-ce sudo gitlab-ctl reconfigure # 完成初始化配置  
    • 确保开放HTTP(80)/HTTPS(443)端口。
  2. 安装GitLab Runner

    • 通过Docker快速部署:
      docker run -d --name gitlab-runner --restart always \ -v /var/run/docker.sock:/var/run/docker.sock \ gitlab/gitlab-runner:latest docker exec -it gitlab-runner gitlab-runner register # 按提示输入GitLab实例信息  

二、配置CI/CD流程

  1. 创建.gitlab-ci.yml文件
    在项目根目录定义构建、测试、部署阶段,例如:

    stages: - build - test - deploy build_job: stage: build script: - echo "Building..." - mkdir build && cd build && cmake .. && make test_job: stage: test script: - echo "Running tests..." - cd build && ctest deploy_job: stage: deploy script: - echo "Deploying..." - scp -r build/* user@server:/path/to/deploy only: - master # 仅在master分支触发  
  2. 配置环境变量

    • 在GitLab项目设置→CI/CD→Variables中添加敏感信息(如API密钥、SSH私钥),避免硬编码在配置文件中。

三、触发与监控

  • 自动触发:代码推送至仓库或合并请求时,GitLab Runner会自动执行.gitlab-ci.yml中的任务。
  • 手动触发:可在GitLab→CI/CD→Pipelines页面手动启动流程。
  • 日志与状态:通过GitLab界面实时查看作业执行状态、日志输出及错误信息。

四、进阶实践

  • 使用Docker镜像:在.gitlab-ci.yml中指定基础镜像(如image: python:3.9),简化环境配置。
  • 缓存优化:通过cache关键字缓存依赖文件,加速构建过程。
  • 集成其他工具:添加SonarQube进行代码质量扫描,或通过SSH部署至服务器。

参考来源

0