Docker中gitlab以及gitlab-runner的安装与使用

news2024/11/27 8:23:37

1、本文主要讲述如何使用Docker安装gitlab以及gitlab-runner,并且会讲述gitlab-runner如何使用
2、gitlab部分不需要修改过多的配置即可使用,本文未讲述https配置,如有需求,可自行百度

3、Docker如何安装可以自行百度

一、Docker安装gitlab

1、使用命令直接安装gitlab最新版本(建议安装最新版本,更加安全且全面)

docker pull gitlab/gitlab-ce

2、使用命令启动gitlab

# /home/www/gitlab/config:/etc/gitlab是docker中gitlab配置映射在主机中的位置,可自己改动(主机文件位置:docker文件位置)
# /home/www/gitlab/log:/var/log/gitlab是docker中gitlab日志映射在主机中的位置,可自己改动(主机文件位置:docker文件位置)
# /home/www/gitlab/data:/var/opt/gitlab是docker中gitlab数据映射在主机中的位置,可自己改动(主机文件位置:docker文件位置)
docker run -d -p 8888:80 -p 8443:443 -p 8822:22 --name gitlab --restart always --privileged=true -v /home/www/gitlab/config:/etc/gitlab -v /home/www/gitlab/log:/var/log/gitlab -v /home/www/gitlab/data:/var/opt/gitlab gitlab/gitlab-ce:latest

3、仓库启动后,修改url地址,避免项目地址乱码

# 进入容器
docker exec -it gitlab bash
# 修改配置文件
vim /etc/gitlab/gitlab.rb
# 修改以下配置:
external_url 'http://XX.XX.XX.XX:XXXX'	# IP:端口
nginx['listen_port'] = 80	# gitlab自带nginx监听80端口进行访问
# 保存退出,重启配置(重启配置会自动重启gitlab)
gitlab-ctl reconfigure

4、修改初始账号密码

# 进入已启动的gitlab容器
docker exec -it gitlab bash
# 链接数据库
gitlab-rails console -e production
# 等待链接成功后,获取用户
user = User.where(id:1).first
# 可以修改用户账号以及密码
user.username = 'XXX'
user.password = 'XXX'
# 保存修改后的数据,save后面不要忘记!的输入
user.save!
# 等gitlab页面自动部署好之后,访问上面external_url配置的地址,使用账号密码登录gitlab即可

二、Docker安装gitlab-runner

1、使用命令直接安装gitlab-runner最新版本

docker pull gitlab/gitlab-runner

2、使用命令启动gitlab-runner

# 文件映射与gitlab一致,可自行修改
docker run -d  --privileged=true  --name runner --restart always -v /home/www/gitlab-runner/config:/etc/gitlab-runner -v /home/www/gitlab-runner/run/docker.sock:/var/run/docker.sock -v /home/www/gitlab-runner/bin/docker:/usr/bin/docker gitlab/gitlab-runner

三、gitlab与gitlab-runner结合使用

1、进入gitlab的runner页面进行创建runner实例

在这里插入图片描述

2、进入后填写以下信息

在这里插入图片描述

选择你使用的操作系统,标签已经最大作业超时时间,本人的选择是:Linux,输入标签,
勾选了运行未打标签的作业,最大作业超时未填写,使用了系统默认的,标签需要记住,后
面编写.gitlab-ci.yml文件时需要用到

3、得到图片中的信息

在这里插入图片描述

4、进入gitlab-runner容器开始注册

# docker exec -it是docker进入容器的命令,这里的runner是上面docker启动容器时的名字,然后使用bash进入
docker exec -it runner bash
# 注册gitlab-runner,输入命令开始注册
gitlab-runner register
# 按照下图将信息补充完整即可,这样gitlab-runner就注册完成了

在这里插入图片描述

5、随意创建一个空白仓库

在这里插入图片描述

6、编写项目中会.gitlab-ci.yml文件后,提交更改

stages:
- test	# 需要与创建runner实例时的标签一致,如果忘记了,可以去runner中查看
sast:	# 名字可以自定义
  stage: test	# 从stages中选择
  tags:	# 标签可以没有
    - test
  script:	# 执行的脚本,可以是sh,except等等
   - echo "Test .gitlab-ci.yml!"

7、查看runner是否有被执行

在这里插入图片描述
标识runner执行成功,如果是X,则执行失败,根据失败原因自行调整
点击对勾进入下一页
在这里插入图片描述
点击已通过进入下一页
在这里插入图片描述
点击名字进入详情页面,如果点击后面的再次运行,则无法看到详情信息
在这里插入图片描述
图中就显示的script所执行的命令

结语

按照以上步骤,gitlab与gitlab-runner的安装与使用就结束了,欢迎安装失败的小伙伴留言,博主看到了会及时回复

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

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

相关文章

react中的高阶组件理解与使用

一、什么是高阶组件? 其实就是一个函数,参数是一个组件,经过这个函数的处理返回一个功能增加的组件。 二、代码中如何使用 1,高级组件headerHoc 2,在普通组件header中引入高阶组件并导出高阶组件,参数是普…

linux备份与还原系统(类似window上ghost备份还原)

一、摘要 在linux上进行了几年的开发工作 (qt ros) 突然发现,现在有公司硬件、笔记本台式机一台占一个系统,导致硬件太浪费,又不能用虚拟机(有时候要链接硬件必须物理机)怎么办? 二…

Simple Set Problem

题意: 给你k个集合,每个集合里有ci个数,在每个集合里各挑一个数,求挑的k个数里的最大值减去最小值的值最小 思路: 可以将题意转换为,挑的所有数的集合一共有n种,求挑的数的最大值最小值的差最…

idealC-2020.1.4免费下载(附安装教程)

下载地址 [软件名称]: IntelliJ IDEA 2020 [软件大小]: 560MB [安装环境]: Windows [下载链接]: 链接: https://pan.baidu.com/s/1yGOWqfRVE6cPsAe0qHpnbg https://pan.baidu.com/s/1yGOWqfRVE6cPsAe0qHpnbg 提取码: zt88 软件介绍 idea 2020.是由捷克IntelliJ公司而…

快速响应,上门维修小程序让您享受无忧生活

随着科技的不断发展和智能手机的普及,上门维修小程序成为了现代人生活中越来越重要的一部分。上门维修小程序通过将维修服务与互联网相结合,为用户提供了更加便捷、高效的维修服务体验。下面将介绍上门维修小程序开发的优势。   提供便捷的预约方式&am…

NFTScan | 07.24~07.30 NFT 市场热点汇总

欢迎来到由 NFT 基础设施 NFTScan 出品的 NFT 生态热点事件每周汇总。周期:2023.07.24~ 2023.07.30 NFT Hot News 01/数据:Azuki 地板价跌破 5 枚 ETH,过去 7 日跌幅逾 20% 7月24日, Blur数据显示,Azuki地板价已跌破…

开关降压型DC-DC芯片方案:30V-80V转24V/12V/5V芯片

摘要:本文介绍了一种开关降压型DC-DC芯片方案,可将输入电压范围在9V至100V之间的信号转换为24V、12V和5V输出。该芯片采用了外挂MOS管,能够提供10A峰值电流输出,并且具备低待机功耗、内置过温保护和输出短路保护等功能。此外&…

【图像分类】CNN+Transformer结合系列.3

介绍两篇图像分类的论文:ResMLP(arXiv2305),MetaFormer(CVPR2022),两者都与Transformer有关系,前者基于transformer结构的特点设计ResMLP,后者认为宏观架构才是Transform…

【教程】Tkinter实现Python软件自动更新与提醒

转载请注明出处:小锋学长生活大爆炸[xfxuezhang.cn] 文件下载:https://download.csdn.net/download/sxf1061700625/88134425 示例演示: 参考代码: import os import _thread import shutil import subprocess import sys import …

RFID出入库管理系统

RFID(射频识别)技术作为一种先进的自动识别技术,已经广泛应用于各个领域,仓库管理系统就是其中之一。RFID仓储管理系统利用RFID技术实现实时数据传输和信息识别,为企业提供了高效、准确的库存管理解决方案。 RFID出入库管理系统基于RFID技术&…

基础概念:图片的卷积可视化结果

1. 前言 之前介绍过卷积的基本概念,具体的可以参考图片的卷积和池化操作,这里给出可视化的操作,因为卷积在初学的时候比较抽象,现在有时间就写写看,希望可以给初学的同学一点启发吧(这里前提是学过pytorch和相关的图像…

Elasticsearch和Kibana的安装及验证

金翅大鹏盖世英,展翅金鹏盖世雄。 穿云燕子锡今鸽,踏雪无痕花云平。 ---------------- 2023.7.31.101 ----------------- 本文密钥:365 Elasticsearch 是一个分布式的 RESTful 风格的搜索和数据分析引擎,常用来进行全文检索、…

分享亿款好用的PDF编辑工具

所周知,PDF文件是不能够像word/excel/ppt等文件一样,可以被随意编辑的,PDF文件往往只能够被查看,我们无法对它进行编辑,或者对上面的文字进行复制,也不能任意删除上面的页面。但是很多时候,我们…

【应用层】Http协议的学习

文章目录 前言一、了解HTTP协议是如何规定的总结 前言 http/https都是应用层协议,下面是应用层的作用: 应用层主要负责应用程序之间的沟通,如简单电子邮件传输(SMTP),文件传输协议(FTP&#x…

支付宝调试问题

网页支付返回表单不正确显示 升级前现象&#xff1a; SpringBoot 的返回给前台的<form>表单会自动提交&#xff0c;结果一直提示这个&#xff0c;而不是期望的支付宝登录页 实际得到这个&#xff1a; 期望得到这个&#xff1a; 因为沙箱账号是之前申请的&#xff0c;所…

[CrackMe]Cruehead.2.exe的逆向及注册机编写

1. 逆向工程 这个版本连一个注册界面也没有 进去一看, 他打开了一个CRACKME32.KEY, 估计里面就是放key的, 于是我随便写了一些数字进去 从CRACKME32.KEY中读取18个字节, 然后确认读取是否成功, 可见密码是18字节, 回去把密码长度改成18在重新调试 接着把key值输入CalcHash函…

AMEYA:尼得科科宝滑动型DIP开关CVS产品参数及价格​

日本电产尼得科科宝滑动型DIP开关CVS采用紧凑设计&#xff0c;3bit产品&#xff0c;旋钮把手高度为0.2mm&#xff0c;操作性良好端子为1mm间距&#xff0c;电路数丰富(2,3,4,8)端接样式为鸥翼式&#xff0c;J形引线使用树脂材料符合UL认证94V-0 符合RoHS规范。 日本电产尼得科科…

11-矩阵的运算_加减法_数乘_转置

矩阵的运算 加法&#xff0c;数乘&#xff0c;减法&#xff0c;转置 矩阵的加减 矩阵的加法就是矩阵的对应位置相加&#xff0c;减法也是一样就是对应位置相减 数乘 转置 转置的操作和向量是一样的&#xff0c;就是把 aij 变成 aji&#xff0c;把行和列互换一下 对于矩阵而…

【低代码开发】:探索应用开发的未来趋势

低代码开发&#xff1a;加速应用开发的未来趋势 引言什么是低代码以及功能特点&#xff1f;什么是低代码开发&#xff1f;低代码平台的特点和功能低代码平台的应用场景和优势低代码的优点低代码的缺点低代码平台项目开发流程选择和实施低代码平台 低代码未来的发展趋势低代码平…

vue - 【完整源码】实现评论区发表评论、回复评论、评论盖楼等功能,前端PC网站/移动端H5实现多用户评论与回复功能(详细示例源码,一键复制开箱即用)

效果图 在vue项目开发中,实现一个类似社交软件的评论区发表留言及回复等评论功能效果,可以无限回复盖楼。 一、功