当前位置: 首页 > news >正文

Gitlab runner 安装和注册

Gitlab Runner 

GitLab Runner是一个用于运行GitLab CI/CD流水线作业的软件包,由GitLab官方开发,完全开源。你可以在很多主流的系统环境或平台上安装它,如Linux、macOS、Windows和Kubernetes。如果你熟悉Jenkins 的话,你可以把它理解为Jenkins slave节点。

Gitlab Runner 架构

图片

安装GitLab Runner

没有GitLab Runner,GitLab CI/CD的流水线就无法运行,现在我们就在一台计算机上安装GitLab Runner。GitLab Runner的安装方式有很多,二进制安装,docker安装。今天我介绍一下二进制安装。

1. 下载安装包

sudo curl -L --output /usr/local/bin/gitlab-runner "https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/latest/binaries/gitlab-runner-linux-amd64"

图片

2. 添加执行权限

#sudo chmod +x /usr/local/bin/gitlab-runner

3. 创建 GitLab CI 用户

#useradd --comment 'Gitlab runner' --create-home gitlab-runner --shell /bin/bash

4.  作为服务安装

sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runnersudo gitlab-runner start

5. 注册到Gitlab 服务器

当然你如果有自己的gitlab 服务器的话,也可以注册到自己的gitlab 服务器。

gitlab-runner registerRuntime platform                                    arch=amd64 os=linux pid=47871 revision=44feccdf versionRunning in system-mode.                                                                               Enter the GitLab instance URL (for example, https://gitlab.com/):https://gitlab.comEnter the registration token:xxxxxxxxxxxxxxxx  //请替换成自己的token Enter a description for the runner:[gitlab01]: linuxEnter tags for the runner (comma-separated):linuxEnter optional maintenance note for the runner:This is only for testing.WARNING: Support for registration tokens and runner parameters in the 'register' command has been deprecatert for authentication tokens. For more information, see https://docs.gitlab.com/ee/ci/runners/new_creation_Registering runner... succeeded                     runner=GR134894157Z-kVdL            Enter an executor: instance, custom, ssh, parallels, docker-windows, docker+machine, shell, virtualbox, doc[shddd]: dockerEnter the default Docker image (for example, ruby:2.7):alpine:latestRunner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded! Configuration (with the authentication token) was saved in "/etc/gitlab-runner/config.toml"

通过下面的步骤可以查看token

图片

注册成功后,可以登录gitlab.com来查看该runner

图片

运行pipeline

在你的project 中创建一个.gitlab-ci.yml文件

图片

复制下面的代码并提交更改,然后pipeline开始工作。

build-job:  stage: build  script:    - echo "Hello, $GITLAB_USER_LOGIN!"
test-job1:  stage: test  script:    - echo "This job tests something"
test-job2:  stage: test  script:    - echo "This job tests something, but takes more time than test-job1."    - echo "After the echo commands complete, it runs the sleep command for 20 seconds"    - echo "which simulates a test that runs 20 seconds longer than test-job1"    - sleep 20
deploy-prod:  stage: deploy  script:    - echo "This job deploys something from the $CI_COMMIT_BRANCH branch."  environment: production

选择Build-Pipelines,你可以看到三个阶段的pipepline:

图片

图片

点击pipeline id,可以看到图形化的pipeline。

图片

选择其中的一个job,点击该job名称可以看到job的详细信息。

图片

到此为止,你已经在gitlab 中成功运行第一个CICD pipeline。

总结

今天我们了解的 Gitlab CI/CD 中负责执行脚本的 Gitlab Runner 的设计结构,介绍了它的安装(二进制),注册流程。最后我们演示了如何运行一个 CICD pipeline。

http://www.dtcms.com/a/144910.html

相关文章:

  • Sentinel源码—6.熔断降级和数据统计的实现二
  • 【数据结构入门训练DAY-18】信息学奥赛一本通T1331-后缀表达式的值
  • React 打包
  • Python数据可视化领域的卓越工具:深入剖析Seaborn、Plotly与Pyecharts
  • 使用LSTM动态调整SIMPLE算法松弛因子的CFD仿真训练程序
  • B+树删除和测试
  • seate TCC模式案例
  • vue3 toRefs 与 toRef的使用
  • SpringCloud概述和环境搭建
  • Vue3 响应式原理: Proxy 数据劫持详解
  • 命令行参数·环境变量·进程地址空间(linux+C/C++)
  • 【Rust 精进之路之第14篇-结构体 Struct】定义、实例化与方法:封装数据与行为
  • STM32开发过程中碰到的问题总结 - 4
  • C++:详解命名空间
  • Chromium 134 编译指南 Ubuntu篇:环境搭建与源码获取(一)
  • Cesium 地形加载
  • 2025年渗透测试面试题总结-拷打题库07(题目+回答)
  • 性能比拼: Go vs Bun
  • PICO4 Ultra MR开发 空间网格扫描 模型导出及预览
  • 【25软考网工】第二章(8)差错控制、奇偶校验、CRC、海明码
  • DAY6:从执行计划到索引优化的完整指南
  • C语言笔记(鹏哥)上课板书+课件汇总(结构体)-----数据结构常用
  • 【每日八股】复习计算机网络 Day3:TCP 协议的其他相关问题
  • 飞帆中控件数据和 Vue 双向绑定
  • 3.4/Q2,GBD数据库最新文章解读
  • 山东大学软件学院创新项目实训开发日志(20)之中医知识问答自动生成对话标题bug修改
  • 【Rust 精进之路之第13篇-生命周期·进阶】省略规则与静态生命周期 (`‘static`)
  • UCSC CTF 2025|MISC
  • 计算机视觉与深度学习 | Transformer原理,公式,代码,应用
  • 【文献阅读】EndoNet A Deep Architecture for Recognition Tasks on Laparoscopic Videos