• 在centos中注册gitlab runner


    注册runner 有几种不同的方式,这里介绍的是在centos7中使用 rpm包来安装
    按照gitlab runner的官网链接里面的介绍: gitlab runner 链接

    下载

    官网描述:

    ## Replace ${arch} with any of the supported architectures, e.g. amd64, arm, arm64
    # A full list of architectures can be found here https://gitlab-runner-downloads.s3.amazonaws.com/latest/index.html
    curl -LJO "https://gitlab-runner-downloads.s3.amazonaws.com/latest/rpm/gitlab-runner_${arch}.rpm"
    
    
    • 1
    • 2
    • 3
    • 4

    如官网所描述,将${arch}替换成所支持的文件

     curl -LJO "https://gitlab-runner-downloads.s3.amazonaws.com/latest/rpm/gitlab-runner_amd64.rpm"
    
    • 1

    这里是将${arch}换成了amd64
    在centos7中新建一个runner的文件夹,在该目录下输入上述命令。当下载完之后,即可看见在当前的runner文件夹中有gitlab-runner_amd64.rpm文件了
    在这里插入图片描述

    安装

    如官网所描述,运行下面的命令
    在这里插入图片描述
    当前是在centos系统中安装,注意将arch替换成amd64,完整运行的命令如下:

    rpm -Uvh gitlab-runner_amd64.rpm
    
    • 1

    在这里插入图片描述
    经过一段时间的等待之后,gitlab-runner 的服务已近安装成功了
    在这里插入图片描述
    我们可以看到当前的gitlab-runner 的版本是信息,以及配置文件信息

    注册runner

    运行如下命令,注意一些关键参数的意思

    1. url: 所管理gitlab 服务的域名
    2. registration-token: 注册runner的token. 一般是owner权限可以在gitlab runner信息中查看到
    3. executor: 执行器的类别,有很多,常用的有docker和shell,这里我们选择shell类型的执行器
    4. description: 对注册runner的描述
    5. tag-list: 注册runner的标签
    6. run-untagged:对没有标签的流水线是否可以使用当前的runner
    sudo gitlab-runner register \
      --non-interactive \
      --url "https://gitlab.dc.servyou-it.com/" \
      --registration-token "gitlab token" \
      --executor "shell" \
      --docker-image alpine:latest \
      --description "afe-shell-runner" \
      --tag-list "tag" \
      --run-untagged="true" \
      --locked="false" \
      --access-level="not_protected"
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    在这里插入图片描述

    注册完之后即可看到,已近显示注册成功了,并且可以在/etc/gitlab-runner/config.toml配置文件中查看到注册runner的基本信息
    在这里插入图片描述

    也可以去gitlab网站中查看我们刚刚注册的runner
    在这里插入图片描述
    当我们看到statue中显示是online的标记的时候,即可表示当前runner已近可以正常使用了。

    我们可以写一个简单的流水线,输出一些内容。发现此时的runner可以正常运行了
    在这里插入图片描述

    删除指定的runner

    我们可以注册多个runner,也可以删除指定的runner。
    这里我们使用gitlab-runner list查看到有一个runner的名称为afe-shell-runner.
    我们通过下面命令将其删除

    gitlab-runner verify --delete --name afe-shell-runner
    
    • 1

    显示runner…is removed之后该runner已近被删除了。
    我们可以通过gitlab-runner list命令查看到已近没有afe-she-runner了。
    也可以查看config.toml配置文件发现也没有了afe-she-runner的信息了

    在这里插入图片描述

    shell与docker执行器的几个不同点

    1. docker 注册的runner每次运行runner的时候都是启动一个全新的容器,环境是干净的。不同runner之间任务是独立的,不会干扰到宿主环境。
    2. shell 运行则是在机器上,共享一个全局环境,意味着有些全局环境比如node,无需在.gitlab-ci.yml中重新安装了。比较方便,但也可能一个任务修改了全局变量会影响其他runner运行的环境
    3. shell执行流水线之后代码会保存在本地的/home/build/这个文件夹之下。不会运行完之后删除。这点需要注意一下,需要定时删除,否则时间久了可能会占用本地大量的磁盘空间
  • 相关阅读:
    IO 框架
    C++项目实战——基于多设计模式下的同步&异步日志系统-⑧-日志落地类设计
    Python项目实战:制作一个翻译软件
    【用四道刁钻例题带你理解】数据在内存中存储的方式
    【Java】Java加密API
    【云原生 | 27】Docker部署运行开源消息队列实现RabbitMQ
    openvino cpp使用
    【项目实践】Pyside6+Qtdesigner:登录窗体设计
    华为机试题:HJ6 质数因子
    编程高手必学的内存知识04:深入理解静态链接与动态链接
  • 原文地址:https://blog.csdn.net/weixin_38080573/article/details/127937883