gitlab之cicd的gitlab-runner cicd实践-rpm离线安装

news2024/11/16 11:33:42

目录

  • 概述
  • 资源
    • 官方资源
    • 离线资源
  • 操作
    • 环境验证
    • gitlab-runner安装
    • 注意事项
    • 重启
    • 向gitlab注册
    • CICD流程测试

概述

  gitlab此文使用rpm离线安装的方式,使用 gitlab-runner dockerfile构建运行环境: 如有兴趣可以参考这篇文章
  gitlab选择 docker-compose 执行 docker 部署,gitlab-runner 选择 rpm 方式安装,也有使用 dockerfile 构建整个 cicd 环境。

整体执行图如下:
在这里插入图片描述
gitlab安装参考

资源

官方资源

gitlab-runner官网下载地址

离线资源

  此资源在本章节中得到了验证。
离线资源地址

操作

环境验证

验证 jdk 、maven、docker 的版本

[root@hadoop01 ~]# mvn -v
Apache Maven 3.8.1 (05c21c65bdfed0f71a2f2ada8b84da59348c4c5d)
Maven home: /root/apache-maven-3.8.1
Java version: 1.8.0_261, vendor: Oracle Corporation, runtime: /root/jdk1.8.0_261/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "5.4.274-1.el7.elrepo.x86_64", arch: "amd64", family: "unix"
[root@hadoop01 ~]# docker version
Client:
 Version:           24.0.5
 API version:       1.41 (downgraded from 1.43)
 Go version:        go1.20.6
 Git commit:        ced0996
 Built:             Fri Jul 21 20:34:32 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          20.10.12
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.16.12
  Git commit:       459d0df
  Built:            Mon Dec 13 11:46:12 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          v1.4.12
  GitCommit:        7b11cfaabd73bb80907dd23182b9347b4245eb5d
 runc:
  Version:          1.0.2
  GitCommit:        v1.0.2-0-g52b36a2d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0
[root@hadoop01 ~]# 

gitlab-runner安装

[root@hadoop01 ~]# rpm -ivh download.rpm 
警告:download.rpm: 头V4 RSA/SHA512 Signature, 密钥 ID 35dfa027: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:gitlab-runner-13.8.0-1           ################################# [100%]
GitLab Runner: creating gitlab-runner...
Runtime platform                                    arch=amd64 os=linux pid=16032 revision=775dd39d version=13.8.0
gitlab-runner: Service is not running.
Runtime platform                                    arch=amd64 os=linux pid=16046 revision=775dd39d version=13.8.0
gitlab-ci-multi-runner: Service is not running.
Runtime platform                                    arch=amd64 os=linux pid=16089 revision=775dd39d version=13.8.0
Runtime platform                                    arch=amd64 os=linux pid=16133 revision=775dd39d version=13.8.0
Clearing docker cache...

注意事项

修改一下 gitlab-runner 用户

  • 可将gitlab-runner运行的账号修改为root,将权限升级–user gitlab-runner 修改为 –user root
  • 注意gitlab-runner默认路径,/home/gitlab-runner需要注意此目录的磁盘大小

或者执行如下命令

# 查看运行容器用户信息
ps -u | grep gitlab-runner
# 将gitlab加入docker用户组
usermod -aG docker gitlab-runner
# 刷新docker用户组
newgrp docker

重启

[root@hadoop01 ~]# systemctl daemon-reload
[root@hadoop01 ~]# systemctl restart gitlab-runner.service
[root@hadoop01 ~]# systemctl status gitlab-runner.service
● gitlab-runner.service - GitLab Runner
   Loaded: loaded (/etc/systemd/system/gitlab-runner.service; enabled; vendor preset: disabled)
   Active: active (running) since 四 2024-05-30 15:35:38 CST; 2s ago
 Main PID: 25470 (gitlab-runner)
    Tasks: 12
   Memory: 11.1M
   CGroup: /system.slice/gitlab-runner.service
           └─25470 /usr/bin/gitlab-runner run --working-directory /home/gitlab-runner --config /etc/gitlab-runner/config.toml --service gitlab-runner --user root

向gitlab注册

[root@hadoop01 ~]# gitlab-runner register
Runtime platform                                    arch=amd64 os=linux pid=27450 revision=775dd39d version=13.8.0
Running in system-mode.                            
                                                   
Enter the GitLab instance URL (for example, https://gitlab.com/):
http://10.xx.xx.142:8088/
Enter the registration token:
zTmKegWEfStFWa5hCbhR
Enter a description for the runner:
[hadoop01]: test
Enter tags for the runner (comma-separated):
test,prod
Registering runner... succeeded                     runner=zTmKegWE
Enter an executor: parallels, shell, virtualbox, docker-ssh+machine, docker, docker-ssh, docker+machine, kubernetes, custom, ssh:
shell
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded! 

CICD流程测试

在这里插入图片描述

在这里插入图片描述
镜像也上传至私服上了
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1800296.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

前端面试题】—53道常见NodeJS基础面试题(附答案)

Node. js是一个不错的选择,它是基于JavaScript语法的一套服务器端(后端)语言。想要在企业中做得更好,开发者需要更多地了解它,并掌握它的有关用法。 1、你了解 Node. js吗? Node. js是一个基于 Chrome v8引…

移动安全赋能化工能源行业智慧转型

随着我国能源化工企业的不断发展,化工厂中经常存在火灾爆炸的危险,特别是生产场所,约有80%以上生产场所区域存在爆炸性物质。而目前我国化工危险场所移动通信设备的普及率高,但是对移动通信设备的安全防护却有所忽视,包…

R语言探索与分析19-CPI的分析和研究

一、选题背景 CPI(居民消费价格指数)作为一个重要的宏观经济指标,扮演着评估通货膨胀和居民生活水平的关键角色。在湖北省这个经济活跃的地区,CPI的波动对于居民生活、企业经营以及政府宏观经济政策制定都具有重要的影响。因此&a…

信息学奥赛初赛天天练-22-C++基础关键字、进制转换、结构体与联合体的实用技巧大揭秘

PDF文档公众号回复关键字:20240607 单项选择题(共15题,每题2分,共计30分:每题有且仅有一个正确选项) 1 在C中,下面哪个关键字用于声明一个变量,其值不能被修改?( &#…

C#上位机开发

目录 一、上位机简介二、C#语法三、新建VS工程四、WinForm控件4.1 属性4.2 事件4.3 窗体方法4.4 常用控件4.5 布局 五、Serial上位机5.1 UI界面设计5.2 功能设计 六、项目打包成安装包6.1 前提准备6.2 打包步骤 一、上位机简介 在单片机项目开发中,上位机也是一个很…

因为宇宙一片漆黑,所以地球才有昼夜之分,宇宙为什么是黑的?

因为宇宙一片漆黑,所以地球才有昼夜之分,宇宙为什么是黑的? 地球为何会有昼夜之分? 乍一看,这个问题很是简单,当然是因为地球一直在自转了,当地球的一部分被太阳照射时就是白昼,而…

【中间件系列】浅析redis是否适合做消息队列

文章目录 一、简单的list消息队列1.命令示例2.伪代码示例3.方案优劣 二、Pub/Sub发布订阅1.消息丢失2.消息堆积 三、相对成熟的Stream1.redis命令介绍2.多消费者组测试3.Stream会持久化吗?4.消息堆积如何解决? 总结 用redis也是比较久了,并且…

程序员的职业素养:走向成功的关键

程序员的职业素养:走向成功的关键 引言 在信息时代,程序员扮演着至关重要的角色。他们推动着技术创新,构建起我们赖以生存的数字世界。然而,仅仅精通技术,并不能确保一个程序员的成功。优秀的职业素养,是程…

Vue Router 4与路由管理实战

title: Vue Router 4与路由管理实战 date: 2024/6/7 updated: 2024/6/7 excerpt: 这篇文章介绍了如何在Vue.js应用中利用Vue Router实现单页面应用的路由管理,包括配置路由、导航守卫的使用、路由懒加载以优化性能以及动态路由的实现方法,旨在提升用户体…

钉钉二次开发-企业内部系统集成官方OA审批流程

场景:企业内部开发人员不足,需要从以前集成Activiti的方式转换成集成钉钉官方OA审批流程,提高开发效率和系统稳定性。 摘要:企业内部系统集成Acitiviti开源工作流存在的问题: 1. 企业需要单独搭建工作流服务&#xff…

玩转ChatGPT:最全学术论文提示词分享【上】

学境思源,一键生成论文初稿: AcademicIdeas - 学境思源AI论文写作 在当今数字时代,人工智能(AI)技术正迅速改变各行各业的运作方式。特别是,OpenAI的ChatGPT等语言模型以其强大的文本生成能力,…

大数据相关知识||电商大数据相关参数和返回||主流电商平台大数据采集

主流电商大数据: 公共参数 名称类型必须描述keyString是调用key(免费测试)secretString是调用密钥api_nameString是API接口名称(包括在请求地址中)[item_search,item_get,item_search_shop等]cacheString否[yes,no]默…

jupyter notebook默认工作目录修改

jupyter notebook默认工作目录修改 1、问题2、如何修改jupyter notebook默认工作目录 1、问题 anaconda安装好之后,我们启动jupyter notebook会发现其默认工作目录是在C盘,将工作目录放在C盘会让C盘很快被撑爆,我们应该将jupyter notebook默…

【NoSQL】Redis练习

1、redis的编译安装 systemctl stop firewalld systemctl disable firewalld setenforce 0 yum install -y gcc gcc-c make wget cd /opt wget https://download.redis.io/releases/redis-5.0.7.tar.gz tar zxvf redis-5.0.7.tar.gz -C /opt/cd /opt/redis-5.0.7/ # 编译 make…

【Spring Cloud Alibaba】开源组件Sentinel

目录 什么是Sentinel发展历史与Hystrix的异同 Sentinel可以做什么?Sentinel的功能Sentinel的开源生态Sentinel的用户安装Sentinel控制台预备环境准备Sentinel 分为两个部分:下载地址 项目集成Sentinel创建项目修改依赖信息添加启动注解添加配置信息在控制器类中新增…

大数据开发统计数据的详细口径是什么

在进行开发数据需求之前,我们先要明确数据统计的详细口径是什么。 需求1:(不明确的示例) 统计商品的销售数量。 存在的问题: 这个需求表述过于简单,未明确指出统计商品销售数量的时间范围、商品类型等关键…

《十八岁出门远行》世界很小,案牍劳形;世界很大,日短心长

《十八岁出门远行》世界很小,案牍劳形;世界很大,日短心长 余华,作家,著有《在细雨中呼喊》《活着》《文城》《兄弟》等。 文章目录 《十八岁出门远行》世界很小,案牍劳形;世界很大,日…

SOA的参考架构

1. 以服务为中心的企业集成架构 IBM的Websphere业务集成参考架构(如图1所示,以下称参考架构)是典型的以服务为中心的企业集成架构。 图1 IBM WebSphere业务集成参考架构 以服务为中心的企业集成采用“关注点分离(Separation of Co…

Redisson分布式锁原理解析

前言 首先Redis执行命令是单线程的,所以可以利用Redis实现分布式锁,而对于Redis单线程的问题,是其线程模型的问题,本篇重点是对目前流行的工具Redisson怎么去实现的分布式锁进行深入理解;开始之前,我们可以…

正宇软件助力江西数字人大建设,高效解决群众“急难愁盼”问题

近日,赣州市南康区群众通过“江西数字人大”小程序成功解决道路塌陷等民生问题,引发社会广泛关注。这一成功案例不仅彰显了“数字人大”在解决群众“急难愁盼”问题中的重要作用,也凸显了江西地区近年来在数字化人大建设方面的显著成效。正宇…