2、Jenkins持续集成-gitlab安装和源码上传

文章目录

  • 1、Gitlab代码托管服务器安装
  • 2、源代码上传托管


环境&资源准备

  1. 统一采用VMware中安装CentOS7,安装教程,统一设置静态IP
  2. 资源包都存在于我的资源里面

资源版本&位置

名称机器IP软件
代码托管服务器192.168.2.100Gitlab-12.4.2
持续集成服务器192.168.2.101Jenkins-2.190.3、JDK8+、Maven3.6+、Git、SonarQube
应用测试服务器192.168.2.102JDK8+、Tomcat8.5

持续集成流程说明
在这里插入图片描述

  1. 首先,开发人员每天进行代码提交,提交到Git仓库
  2. 然后,Jenkins作为持续集成工具,使用Git工具到Git仓库拉取代码到集成服务器,再配合JDK、Maven等软件完成代码编译,代码测试与审查,测试,打包等工作,在这个过程中每一步出错,都重新再执行一次整个流程。
  3. 最后,Jenkins把生成的jar或war包分发到测试服务器或者生产服务器,测试人员或用户就可以访问应用。

1、Gitlab代码托管服务器安装

在这里插入图片描述
官网:https://about.gitlab.com/
GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的 web服务。
GitLab和GitHub一样属于第三方基于Git开发的作品,免费且开源(基于MIT协议),与Github类似,可以注册用户,任意提交你的代码,添加SSHKey等等。不同的是,GitLab是可以部署到自己的服务器上,数据库等一切信息都掌握在自己手上,适合团队内部协作开发,你总不可能把团队内部的智慧总放在别人的服务器上吧?简单来说可把GitLab看作个人版的GitHub。

Gitlab安装

  1. 安装相关依赖
yum -y install policycoreutils openssh-server openssh-clients postfix
  1. 启动ssh服务&设置为开机启动
systemctlenablesshd && sudo systemctl start sshd
#查看sshd的状态
systemctl status sshd
  1. 设置postfix开机自启,并启动,postfix支持gitlab发信功能
systemctl enable postfix && systemctl start postfix
  1. 开放ssh以及http服务,然后重新加载防火墙列表
systemctl status firewalld
firewall-cmd --add-service=ssh --permanent
firewall-cmd --add-service=http --permanent
# 重启防火墙
firewall-cmd --reload

如果关闭防火墙就不需要做以上配置

  1. 下载gitlab包,并且安装
# 在线下载安装包:
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-12.4.2-ce.0.el6.x 86_64.rpm
# 直接使用我提供的资源安装:
rpm -ivh gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm

我的资源都在/webapp/soft/路径下,所以在这个路径下执行命令

如果遇到如下报错:
                                    ⬇️  ⬇️  ⬇️  ⬇️  ⬇️  ⬇️

[root@localhost soft]# rpm -ivh gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm
warning: gitlab-ce-12.4.2-ce.0.el6.x86_64.rpm: Header V4 RSA/SHA1 Signature, key ID f27eab47: NOKEY
error: Failed dependencies:
       policycoreutils-python is needed by gitlab-ce-12.4.2-ce.0.el6.x86_64

这个错误提示表明安装 GitLab Community Edition 12.4.2版本时缺少依赖的软件包 policycoreutils-python。你需要先安装 policycoreutils-python 软件包,然后再尝试安装 GitLab。
你可以通过以下命令来安装 policycoreutils-python

yum install policycoreutils-python
  1. 修改gitlab配置
vi /etc/gitlab/gitlab.rb

修改gitlab访问地址和端口,默认为80,我们改为82

# 原来的是external_url 'http://gitlab.example.com'
external_url 'http://192.168.2.100:82'
# 这一行代码默认好像是注释掉的,可以直接贴进去,不然就使劲往下翻,在很往下的位置
nginx['listen_port'] = 82
  1. 重载配置及启动gitlab
# 大概五分钟左右才能执行完
gitlab-ctl reconfigure
# 重启一下gitlab
gitlab-ctl restart
  1. 把端口添加到防火墙
firewall-cmd --zone=public --add-port=82/tcp --permanent
firewall-cmd --reload

启动成功后,看到以下修改管理员root密码的页面,修改密码后,然后登录即可
在这里插入图片描述

一定注意,第一个出现的页面是让你设置你的密码,长度是8位,记住自己的密码

到此为止,GitLab已经安装完成~,给自己点个赞👍👍👍

2、源代码上传托管

  • 工具Idea
  • JDK8+

下面来到IDEA开发工具,我们已经准备好一个简单的Web应用准备到集成部署。(随便准备一个即可)
我们要把源码上传到Gitlab的项目仓库中。

  1. 项目结构说明
    在这里插入图片描述
    我们建立了一个非常简单的web应用,只有一个index.jsp页面,如果部署好,可以访问该页面就成功
    啦!
  2. 开启版本控制
    流程
    • 1)选择idea上方的vcs,
    • 2)选择Enable Version Control Integration...
    • 3)选择Git
    • 4)然后选中项目,右键,找到Git,选择Add,提交代码到本地仓库
    • 5)选中项目,右键,找到Git,再Commit到本地仓库(Commit Directory…)
    • 6)推送代码到Git仓库中,选择弹出框的Define remote(添加远程仓库地址)
      在这里插入图片描述
    • 7)复制代码仓库的地址
      在这里插入图片描述
    • 8)输入gitlab的用户名和密码,然后就可以把代码推送到远程仓库啦
    • 9)刷新gitlab项目,是自己刚才提交的代码就对啦

到此为止,代码推送成功。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

idm下载器 idm网络加速器 Internet Download Manager(IDM)免激活不弹窗版

idm下载器官方版英文名为Internet Download Manager。是一款界面简单、体积小巧下载速度飞快的下载工具,支持断点续传、多个任务同时下载,同时还支持限速下载,在自义文件类型里还可以自由设置下载的文件类型。 一、IDM软件安装 Internet Dow…

Linux安装Nginx及配置TCP负载均衡

目录 1、安装编译工具及库文件2、下载解压Nginx压缩包3、Ngnix配置Tcp负载均衡4、配置Ngnix的文件5、Nginx启动 1、安装编译工具及库文件 yum -y install make zlib zlib-devel gcc-c libtool openssl openssl-devel pcre-devel2、下载解压Nginx压缩包 wget https://nginx.o…

Docker 安装 Tomcat

目录 1. 总体步骤 2.安装tomcat 2.1 搜索 2.2 拉取 2.3 查看是否拉取到镜像 2.4 运行镜像 2.5 访问tomcat首页 1. 总体步骤 搜索镜像拉取镜像查看镜像启动镜像停止容器移除容器 2.安装tomcat 2.1 搜索 2.2 拉取 docker pull tomcat 2.3 查看是否拉取到镜像 docker …

连接医患的桥梁:深入了解互联网医院APP的开发与优化

当下,互联网技术的不断发展,越来越多的医院和医疗机构开始关注并投入到互联网医院APP的开发与优化中。接下来,小编将与大家共同探讨互联网医院APP的开发与优化。 一、互联网医院APP的开发原则 (1)用户体验至上 界面设…

卷积篇 | YOLOv8改进之主干网络中引入可变形卷积DConv

前言:Hello大家好,我是小哥谈。可变形卷积模块是一种改进的卷积操作,它可以更好地适应物体的形状和尺寸,提高模型的鲁棒性。可变形卷积模块的实现方式是在标准卷积操作中增加一个偏移量offset,使卷积核能够在训练过程中扩展到更大的范围,从而实现对尺度、长宽比和旋转等各…

git基础-查看提交历史

查看提交历史 在创建了多个提交之后,或者如果克隆了一个具有现有提交历史的存储库,可能会想要回顾一下发生了什么。最基本和强大的工具就是 git log 命令。 运行下git log查看下输出状态 默认情况下,不带任何参数运行 git log 命令会以逆时…

拌合楼管理系统(八) c#海康威视摄像头车牌识别

前言: c#调用海康威视SDK实现车牌识别 原本以为海康威视sdk的Demo里面没有车牌识别的实例,后来发现自己肤浅了,官方是有提供的,只是车牌识别是通过安防布警的方式实现的.程序主动监听,触发告警后获取到车牌信息. 一、接口调用的流程: 首先初始化sdk -> 开…

袁志佳:前端全栈工程师精英班

教程介绍 本套课程涵盖大前端的全部领域,并对传统的Web前端全栈深入教学。如利用前端知识开发 AI、VR、AR、iOS、Android、PC、Server、智能硬件。 同时我们将核心打造 JavaScript语言新发展、Vue源码分析、前端持续集成方案汇总、MV*框架深度分析 、前端图形学、N…

亚稳态及其解决办法

异步电路 亚稳态 亚稳态亚稳态的产生原因什么是同步异步信号怎么消除亚稳态 亚稳态 在数字电路中,每一位数据不是1(高电平)就是0(低电平)。当然对于具体的电路来说,并非1(高电平)就是…

elementary OS7 Ubuntu 22.04中硬盘挂载报错

elementary OS7 Ubuntu 22.04中硬盘挂载报错 背景目标思路解决方法 背景 上周末安装elementaryos7的过程中将windows10的引导文件搞丢了,这两天准备修复一下,保险期间将固态硬盘上的文件备份到移动硬盘上,备份过程中出现报错的问题&#xff…

2024常用Web支付开发讲解教程

课程介绍 本教程为web支付开发,讲解了最常用的两钟支付:支付宝支付和微信支付,服务器配置和API对接,学完本课程可以学会微信支付、和支付宝支付开发。 学习资料 链接:https://pan.baidu.com/s/19WarLP2dO4dFvNbIHLU…

C++类的6个默认成员函数(构造)

C类和对象基础-CSDN博客https://blog.csdn.net/lh11223326/article/details/136834917?spm1001.2014.3001.5501 目录 1.构造函数 概念 特性 2.析构函数 概念 特性 3.拷贝构造函数 概念 特征 4.赋值运算符重载(构造实现) 运算符重载 赋值运算…

【常见BUG系列】Java 编程中的 NoSuchFieldError 异常:原因与解决方法

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

云原生(五)、Docker-Swarm集群

基础环境说明 1、环境准备 1、启动4台服务器(在同一个网段内)。 2、重命名4台服务器,方便区分。 hostnamectl set-hostname swarm1 reboot安装docker。参考文章:云原生(二)、Docker基础 2、DockerSwarm…

Autosar Crypto Interface学习笔记

文章目录 前言Functional specificationError classificationError detection API specificationType DefinitionsFunction definitionsGeneral APICryIf_InitCryIf_GetVersionInfo Job Processing InterfaceCryIf_ProcessJobDispatch Key IDs匹配KeyId Job Cancellation Inter…

springcloud-Nacos 更强大的注册中心组件

Nacos 实际上从设计思想来说 Eureka 和 nacos 是一样的。 后者是Alibaba推出的 一款更强大 功能更丰富的注册中心 你可以理解为Eureka的高配版 技多不压身既然了解了 Eureka, nacos也来学习一下吧! 安装 首先nacos不像eureka 直接pom里面引个依赖就搞定了&#…

odoo17开发教程(17):美化UI界面

从业务角度来看,我们的房地产模块现在很有意义。我们创建了特定的视图,添加了几个操作按钮和约束条件。不过,我们的用户界面还有些粗糙。我们希望在列表视图中添加一些颜色,并使一些字段和按钮有条件地消失。例如,&quo…

Webman全局异常捕获处理

最近在使用webman这个框架做项目开发,涉及到需要统一处理异常捕获。由于官网给的并不详细,于是自己实现了一下全局异常处理类。 一、配置效果 例如:我要在项目中统一返回json 格式数据,并不想在业务层写try,catch逻辑。 或者在业务…

从产品组装和维护/维修的角度来看,基于增强现实的指导:关于挑战和机遇的最新综述

作者: 1. M. Eswaran 2. Anil Kumar Gulivindala 3. M.V.A.Raju Bahubalendruni 关于本文 •分析了增强现实在装配和维护/维修中的作用。 •讨论了AR辅助制造系统的软件和硬件元素。 •讨论了AR跟踪和配准技术面临的挑战。 •讨论了AR辅助制造系统的未来…

使用插件将swagger文档转html或pdf

github上有maven开源插件swagger2markup将swagger文档转为.adoc格式的文档,另外一个maven开源插件asciidoctorj-pdf则可以将.adoc格式的文档转为html和pdf。由于GitHub访问不稳定,在gitee上有镜像项目。所以我就贴gitee上的项目地址了。 实现从swagger文…