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

news2024/11/25 20:17:08
首先理解持续集成原理,看懂并理解图 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.coloradmin.cn/o/1930246.html

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

相关文章

学习大数据DAY17 PLSQL基础语法6和Git的基本操作

目录 包 存储过程调试功能 作业 阶段复习作业 Git课程目录 什么是版本控制 没有版本控制的缺点 常见的版本工具 版本控制分类 1. 本地版本控制 2. 集中版本控制 3. 分布式版本控制 Git与SVN主要区别 Git软件安装及配置 Windows系统安装Git 安装Tortoise Git(乌龟…

Linux网络编程-socket套接字使用详解

1.概念 在Linux中,套接字(socket)是一种通信机制,用于实现不同进程之间或同一主机上的不同线程之间的数据交换。它是网络编程的基础,允许应用程序通过网络进行通信,也可以在同一台机器上的不同进程间进行通…

web自动化测试selenium的基本使用

目录 初始化浏览器并打开网页 定位网页元素 定位的方法 模拟键盘操作 模拟鼠标操作 xpath方法 xpath结点 路径表达式 轴 selenium是一个很流行的自动化测试的库,主要用于模拟浏览器的运行,是web应用测试的工具。 在使用selenium时,…

QSpice-(4) 层次化电路设计

QSpice-(4) 层次化电路设计 在电路规模日渐庞大的现在,单靠一个人把整个电路做完可能还有点麻烦,但也不是不可能,还是要怀揣着那种热情把电路做好,在电路规模比较大的时候我们通常会将电路放到子电路里面去,这个子电路相当于C代…

数据结构——线性表(C语言实现)

写在前面: 在前面C语言的结构体学习中,我提及了链表的操作, 学习数据结构我认为还是需要对C语言的数组、函数、指针、结构体有一定的了解,不然对于结构体的代码可能很难理解,特别是一些书籍上面用的还是伪代码&#xf…

Python 实现股票指标计算——RSI

RSI - 相对强弱指标 1 公式 1.1 第一种计算公式 假设A为N日(N一般取值为6、14、21)内收盘价的正数之和 B为N日内(N一般取值为6、14、21)收盘价的负数之和乘以(-1) 这样,A和B均为正&#xf…

小红书笔记怎么写才能上热门?

文末领取小红书电商开店运营教程! 小红书作为一个拥有亿级用户的社交电商平台,无数人通过这里分享自己的生活点滴和购物心得。 你是不是也想让自己的小红书笔记上热门,获得更多的曝光和关注呢? 今天,我们就来揭秘一…

2024最新MidJourney设计Logo教程+提示词原理

你是否已经看过许多别人分享的 MJ 咒语,却仍无法按照自己的想法画图?通过学习 MJ 的提示词逻辑后,你将能够更好地理解并创作自己的“咒语”。本文将详细拆解使用 MJ 设计 Logo 的逻辑,让你在阅读后即可轻松上手,制作出…

应急靶场(2):Windows Server 2022 - Web1

目录 一、攻击者的shell密码 二、攻击者的IP地址 三、攻击者的隐藏账户名称 四、攻击者挖矿程序的矿池域名(仅域名) 五、有实力的可以尝试着修复漏洞 下载好靶场(前来挑战!应急响应靶机训练-Web1)并搭建好环境,无需密码直接进入靶…

[Spring] Spring Web MVC案例实战

🌸个人主页:https://blog.csdn.net/2301_80050796?spm1000.2115.3001.5343 🏵️热门专栏: 🧊 Java基本语法(97平均质量分)https://blog.csdn.net/2301_80050796/category_12615970.html?spm1001.2014.3001.5482 🍕 Collection与…

【堆 优先队列 第k大】2551. 将珠子放入背包中

本文涉及知识点 堆 优先队列 第k大 LeetCode2551. 将珠子放入背包中 你有 k 个背包。给你一个下标从 0 开始的整数数组 weights ,其中 weights[i] 是第 i 个珠子的重量。同时给你整数 k 。 请你按照如下规则将所有的珠子放进 k 个背包。 没有背包是空的。 如果第…

数据采集监控平台:挖掘数据价值 高效高速生产!

在当今数字化的时代,数据已成为企业非常宝贵的资产之一。然而,要充分发挥数据的潜力,离不开一个强大的数据采集监控平台,尤其是生产制造行业。它不仅是数据的收集者,更是洞察生产的智慧之眼,高效高速处理产…

韦东山嵌入式linux系列-驱动进化之路:总线设备驱动模型-课后作业

在内核源码中搜索 platform_device_register 可以得到很多驱动,选择 一个作为例子: ① 确定它的名字 ② 根据它的名字找到对应的 platform_driver ③ 进入 platform_device_register/platform_driver_register 内部,分析 dev 和 drv 的匹配过…

[WUSTCTF2020]level4题解 入土为安的第三天

二叉树 Practice my Data Structure code..... Typing....Struct.....char....*left....*right............emmmmm...OK! Traversal! Traversal type 1:2f0t02T{hcsiI_SwA__r7Ee} Traversal type 2:20f0Th{2tsIS_icArE}e7__w Traversal type 3: //type3(&x[22]); No w…

Ubuntu/Linux 安装ITKSnap

文章目录 1. 安装ITKSnap1.1 下载后安装 2.进入opt文件夹改名3. 更改启动项4. 创建硬链接5. 添加桌面启动方式6. 即可使用 1. 安装ITKSnap http://www.itksnap.org/pmwiki/pmwiki.php?nMain.HomePage 1.1 下载后安装 找到下载的文件夹,文件夹内打开terminal。复…

Windows系统中MySQL的安装和卸载(详细包含msi和zip下载方式,以及完全卸载方法,易出现问题及解决方案等)

MySQL的安装: 第一种:msi安装(交简单,但是不能自定义安装路径) 下载地址:https://dev.mysql.com/downloads/installer/ 选择历史版本 选择安装版本,这里我选择的是8.0.37的版本,然后点击Download下载离线安装包 如下图即为下载好的版本,双击打开安装 出现如下情况,…

Git操纵本地仓库和远程仓库

git是一个代码托管的平台,我们可以对我们的代码进行分支 推送提交 打标签等等操作,而且git使用过程中也是支持一些linux语言的 比如cd呀 touch mkdir啊等等等 git的具体安装过程就不再赘述 我个人认为 好多东西就是 代码也好 文字 文档 也好&…

Centos7 桌面版安装ToDesk远程控制;linux安装Todesk远程控制;linux远程桌面方案

获取安装包: https://dl.todesk.com/linux/todesk-v4.7.2.0-c7-x86_64.rpm 得到 这个文件就是linux的安装包,后缀名就是rpm,类似windows下的exe 将此文件以你的方式,放到linux中,放哪都行 我使用的FileZila&#xf…

新手教学系列——简单的服务配置项集中管理

前言 在开发和运维过程中,配置管理是一个非常重要但经常被忽视的环节。常用的配置文件格式包括env、ini和yaml等,它们非常适合模块级别的系统配置,尤其是一些敏感信息的配置,例如数据库连接字符串和密码等。但是,对于…

【系统架构设计】数据库系统(一)

数据库系统(一) 数据库模式与范式数据库的结构与模式数据模型关系代数数据的规范化反规范化 数据库设计事务管理备份与恢复分布式数据库系统数据仓库数据挖掘NoSQL大数据 数据库模式与范式 数据库的结构与模式 数据库技术中采用分级的方法将数据库的结…