[Linux+git+Gitee+Jenkins]持续集成实验安装配置详细

首先理解持续集成原理,看懂并理解图 1。
1 持续集成原理结构
1 中,版本控制服务器指远程代码仓库,本实验使用 GitEE 作为远程代码仓库;Jenkins 自动化部署服务器为虚拟机,操作系统为 Linux ;服务器 1…n 为应用服务器,可使用自己物理机作为应用服务器。
详细实验步骤如下:

一、安装 Git 工具

        在物理机上安装 Git ,可通过以下方式安装:
        1.官网下载安装文件进行安装,官网地址: https://git-scm.com/download/win
        安装 Git 教程: https://blog.csdn.net/mukes/article/details/115693833
        Git 使用教程: https://www.liaoxuefeng.com/wiki/896043488029600

二、GitEE 创建仓库

1. 登录 GieEE, 如未有帐号,先注册帐号,注册完登录 GitEE 。记住用户名和 邮箱。
2. 创建仓库。

三、使用 Git 工具将本地项目代码推送到远程仓库(GieEE

共有四种方式将本地项目代码推送到远程仓库。
方式一:使用 Git Bash 推送
方式二:使用 Git Command 推送
方式三:使用 Git GUI 推送
方式四:使用 Idea 集成 Git 工具推送
具体使用哪种方式看使用习惯。下面以 Git Bash 方式演示代码推送。
1. 进入本地项目所在目录,右键项目,选择 Git Bash Here 打开 Git Bash 命令行,输入:
git init
命令。
输入上述命令后,项目目录会出现一个 .git隐藏目录
进入项目目录,找到.git 隐藏目录,进入该目录,用 记事本方式 打开 config 文件 ,并修改

config 文件内容如下:
这里的 user要自己手动添加,origin后面会加上去的 ,user的数据哪里来呢,在我们建好的仓库有一个 克隆/下载 选项,点击之后就会出现我们需要的资料了。把 name和email后面引号内的内容 复制过去就可以了。

 

 


修改完成后,回到 Git Bash 命令行,输入:

git remote add origin 远程仓库地址

,其中远程仓库地址为 Gitee 仓库地址。如下图HTTPs下的那个https开头的地址所示:接下来将当前目录所有文件添加到暂存区,在 Git Bash 命令行输入:

git add ./

,如下图所示:

将代码提交,输入命令:
git commit -m ‘备注信息’

推送代码,输入命令:
git push origin master

推送完成后,登录 GitEE 查看代码是否成功推送。这里的登录就用上了上面的 私人令牌,没有私人令牌就会像下面一样。

点击下面图片上的配置私人令牌的链接,就会跳转到相对应的页面。 

点击生成新令牌, 就会到下一个界面,随便写一个描述直接生成就可以了,但是注意,一定要把令牌复制保存下来,不然只能重新搞一个了。这些搞定之后继续回到上面执行命令出现登陆界面,就把对应的账号和令牌填进去就可以了。

 

 

注意:这里还有可能出现拉取上传不了的情况,可能是因为远程仓库和本地文件夹的版本不一样,也就是里面文件不一样也是不能成功的,一个通用暴力的方法就是直接在push后面加一个-f,如上图,就可以上传成功,但是这样的方法会覆盖掉前面的仓库版本,只适合咱初学者刚开始时候尝试,慎用!!! 

然后我们就可以在远程仓库看到上拉成功了。

 

四、Linux 环境下安装 Jenkins

1.Linux 环境下通过 Dorcker 容器安装 Jenkins(先安装jdk21和maven)

Linux 系统中先要安装 JDK ,如果没有安装,
可直接在配置界面安装)、 Maven Linux 系统中提前安装 Maven ,并配置好 Maven
先查看 系统有无jdk以及maven。这里推荐下载Java21版本,兼容性比前面的要好。
java -version
sudo apt install openjdk-21-jre-heardless
mvn -v
sudo apt install maven

搜索 Jenkins 镜像:
docker search jenkins

拉取 Jenkins 镜像:
docker pull jenkins/jenkins

创建文件目录,用于保存 Jenkins 数据。
sudo mkdir -p /data/jenkins
sudo chmod 777 /data/jenkins


运 行 Jenkins 容器:
docker run -itd -p 8081:8080 -p 50000:50000 -v
/data/jenkins:/var/jenins_home --name myjenkins jenkins/jenkins

查看已启动容器:
docker ps

容器启动后,即可访问 Jenkins 服务器。
查看 Jenkins 密钥:
docker logs myjenkins
(第一次登录 Jenkins 服务器需要输
入密钥) .
这里要重点注意这个命令执行完之后,下拉找到对应的密钥:

2.安装 Jenkins

打开浏览器,输入 Jenkins 访问地址:http://ip:8081 ,这里的ip是虚拟机的IP地址可以下载下面的工具查询,如下图所示:
sudo apt install net-tools
ifconfig

初次运行,要求输入 Jenkins 密钥,这里就是上面执行完之后下拉找到的那个密钥了 。输入完成后,进入 Jenkins 主页。

3.配置 Jenkins

Jenkins 配置内容包括:用户管理、系统配置、全局工具配置、插件管理,具
体如下图所示。
上图中数字表示配置顺序。
用户管理:添加一个用户,记住用户名和密码,添加完成后用新用户登录。
插件管理:只需要安装 Publish over SSH Deploy to container Plugin 这两个 插件。全局工具配置:需要配置 JDK, 配置 git
Configure System ( 系统设置 ) :主要配置应用服务器地址及凭证,暂可不配
置。
这里的配置暂时失败,还不知道什么原因,还需要探索一下。全都失败了,下载不了。

4、创建项目并配置自动化构建和自动化部署

创建一个自由风格项目,点击 New Item,创建一个项目。
创建项目后,配置项目如下信息:项目简介、源码管理、构建触发器、构建
环境、构建、部署
项目简介如下图所示:
源码管理配置信息如下图所示: 构建触发器和构建环境可不配置。
构建配置如下图所示:
构建后动作的配置需要配置服务器信息,用于实现自动部署。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

人工智能与伦理挑战:多维度应对策略

人工智能技术近年来取得了迅猛发展,广泛应用于医疗诊断、金融分析、教育辅助、自动驾驶等各个领域,极大地提升了生产效率和服务质量,推动了科技进步和商业创新。然而,伴随其普及和应用的泛滥,AI也带来了数据隐私侵犯、…

C语言 | Leecode C语言题解之第229题多数元素II

题目: 题解: /*** Note: The returned array must be malloced, assume caller calls free().*//*假定 num1,num2 为出现次数大于 nums.length / 3 的两个数。(最多出现两个)遍历 nums, 若出现 num1、num2…

2024年高职云计算实验室建设及云计算实训平台整体解决方案

随着云计算技术的飞速发展,高职院校亟需构建一个与行业需求紧密结合的云计算实验室和实训平台。以下是针对2024年高职院校云计算实验室建设的全面解决方案。 1、在高职云计算实验室的建设与规划中,首要任务是立足于云计算学科的精准定位,紧密…

如何通过SSH协议使用WinSCP实现Windows与Linux之间的远程公网文件传输

目录 ⛳️推荐 前言 1. Windows传输文件至Linux 2. WinSCP使用公网TCP地址连接 3. WinSCP使用固定公网TCP地址访问服务器 ⛳️推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站 前…

2.5 计算机网络

声明:文章参考的《系统架构设计师教程(第二版)》,如有侵权,本人将立即修改和删除。 利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件以及通信协议实现…

深入Python网络编程:基础、工具和实践

深入Python网络编程:基础、工具和实践 网络编程是Python应用领域中的一个强大且核心的部分,它为开发者提供了与互联网或其他网络设备进行交互的能力。无论是构建Web服务、APIs,还是创建网络客户端,Python都提供了丰富的库来简化这…

【学习笔记】无人机(UAV)在3GPP系统中的增强支持(九)-无人机服务区分离

引言 本文是3GPP TR 22.829 V17.1.0技术报告,专注于无人机(UAV)在3GPP系统中的增强支持。文章提出了多个无人机应用场景,分析了相应的能力要求,并建议了新的服务级别要求和关键性能指标(KPIs)。…

Go语言--广播式并发聊天服务器

实现功能 每个客户端上线,服务端可以向其他客户端广播上线信息;发送的消息可以广播给其他在线的客户支持改名支持客户端主动退出支持通过who查找当前在线的用户超时退出 流程 变量 用户结构体 保存用户的管道,用户名以及网络地址信息 typ…

使用mybatis的statementHander拦截器监控表和字段并发送钉钉消息

新建mybatis的statementHander拦截器拦截器 类 面试题&#xff1a; 2.实现 解析Sql时引入JSqlParser JSqlParser 是一个 SQL 语句解析器。 它将 SQL转换为可遍历的 Java 类层次结构。 <dependency><groupId>com.github.jsqlparser</groupId><artifac…

正则表达式怎么控制匹配的字符串更近的一个

http((?!http).)*m3u8 正则表达式怎么控制匹配的字符串更近的一个 正则如何匹配最近的字符 正则如何匹配最近的两个字符 怎么控制只要离字符串b匹配更近一点的字符串a 解释 a.b&#xff0c;它将会匹配最长的以a开始&#xff0c;以b结束的字符串 a.?b匹配最短的&#xff…

7/13 - 7/15

vo.setId(rs.getLong("id"))什么意思&#xff1f; vo.setId(rs.getLong("id")); 这行代码是在Java中使用ResultSet对象&#xff08;通常用于从数据库中检索数据&#xff09;获取一个名为"id"的列&#xff0c;并将其作为long类型设置为一个对象…

【区块链 + 智慧政务】涉税行政事业性收费“e 链通”项目 | FISCO BCOS应用案例

国内很多城市目前划转至税务部门征收的非税收入项目已达 17 项&#xff0c;其征管方式为行政主管部门核定后交由税务 部门征收。涉税行政事业性收费受限于传统的管理模式&#xff0c;缴费人、业务主管部门、税务部门、财政部门四方处于 相对孤立的状态&#xff0c;信息的传递靠…

MySQL-日志-优化

目录 介绍一下mysql 的日志 redo log 和binlog 的区别及应用场景 redo log 和 binlog 在恢复数据库有什么区别? redo log 是怎么实现持久化的? redo log除了崩溃恢复还有什么其他作用? &#xff08;顺序写&#xff09; redo log 怎么刷入磁盘的知道吗&#xff1f; 两阶…

STM32+TMC2209控制步进电机正反转。

STM32F103ZET6TMC2209控制步进电机正反转 1. 步进电机介绍2 驱动器TMC2209介绍2.1 引脚图及其功能2.2 细分介绍2.3 TMC控制驱动器接法 3 控制器介绍3.1 确定控制引脚3.2 UBEMX配置3.2.1 GPIO配置3.2.2 NVIC配置3.2.3 RCC配置3.2.4 SYS配置3.2.5 USRAT2配置&#xff08;PS:没用上…

Ubuntu 22.04.4 LTS (linux) 安装certbot 免费ssl证书申请 letsencrypt

1 安装certbot sudo apt update sudo apt-get install certbot 2 申请letsencrypt证书 sudo certbot certonly --webroot -w 网站目录 -d daloradius.域名.com 3 修改nginx 配置ssl 证书 # 配置服务器证书 ssl_certificate /etc/letsencrypt/live/daloradius.域名.com/f…

Hadoop3:动态扩容之新增一台机器的初始化工作

一、需求描述 给Hadoop集群动态扩容一个节点 那么&#xff0c;这个节点是全新的&#xff0c;我们需要做哪些准备工作&#xff0c;才能将它融入集群了&#xff1f; 二、初始化配置 1、修改IP和hostname vim /etc/sysconfig/network-scripts/ifcfg-ens33 vim /etc/hostname2、…

电脑屏幕录制,分享3个方法,简单轻松录屏

相信您也经历过这种时刻&#xff0c;当您在浏览一个精彩绝伦的网页&#xff0c;或是观看一部实用的教学视频&#xff0c;突然&#xff0c;你发现了一个细节&#xff0c;想要分享给朋友或者留作日后回味。这时&#xff0c;电脑屏幕录制就像是一个神奇的相机&#xff0c;能够精准…

安全防御:防火墙基本模块

目录 一、接口 1.1 物理接口 1.2 虚拟接口 二、区域 三、模式 3.1 路由模式 3.2 透明模式 3.3 旁路检测模式 3.4 混合模式 四、安全策略 五、防火墙的状态检测和会话表技术 一、接口 1.1 物理接口 三层口 --- 可以配置IP地址的接口 二层口&#xff1a; 普通二层…

RHCA II之路---EX442-23

RHCA II之路---EX442-23 1. 题目2. 解题3. 确认 1. 题目 2. 解题 安装pcp yum install -y pcp解压日志包 tar xf recording.tar.gz cat localhost.localdomain/20141231.06.00.01.config 4. 确认哪个设备IO高 pmval -a localhost.localdomain/20141231.06.00.01.0 disk.de…

Richtek立锜科技可用于智能门铃的电源管理解决方案

新型的智能门铃不仅能满足呼叫、提醒的需要&#xff0c;还能在线监控、远程操作、闯入通知、记录过程&#xff0c;系统构成相对复杂&#xff0c;与传统门铃相比有了很大的改变。 从电源管理的角度来观察&#xff0c;满足这样需求的系统构成也相对复杂&#xff1a; 处于外置状态…