首页 > 系统相关 >[Linux+git+Gitee+Jenkins]持续集成实验安装配置详细

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

时间:2024-07-17 11:28:22浏览次数:18  
标签:git 仓库 配置 Gitee Git Linux 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,创建一个项目。 创建项目后,配置项目如下信息:项目简介、源码管理、构建触发器、构建 环境、构建、部署 项目简介如下图所示: 源码管理配置信息如下图所示: 构建触发器和构建环境可不配置。 构建配置如下图所示: 构建后动作的配置需要配置服务器信息,用于实现自动部署。

标签:git,仓库,配置,Gitee,Git,Linux,Jenkins,推送
From: https://blog.csdn.net/wumingzei/article/details/140460699

相关文章

  • Linux服务器配置信息查看
    lscpu ---查看CPU架构相关信息 Architecture:系统的CPU架构。CPUop-mode(s):CPU的操作模式,比如32位和64位。ByteOrder:字节序,通常是小端(LittleEndian)。CPU(s):系统中总的CPU核心数。On-lineCPU(s)list:在线的CPU核心列表。Th......
  • Linux搭建禅道
    1.安装方式选择Linux一键安装包2.下载禅道一键安装包:https://www.zentao.net/downloads.html 3.将安装包解压到/opt目录下进入/opt目录:cd/opt下载禅道一键安装包:wgethttps://www.zentao.net/dl/zentao/18.5/ZenTaoPMS.18.5.zbox_64.tar.gz解压禅道一键安装包:tar......
  • MarkText A simple and elegant markdown editor, available for Linux, macOS and Wi
    1、这个工具挺不错的,先上一张图,来自github页面截图:2、这个工具是开源的项目,开源地址:https://github.com/marktext官网地址:www.marktext.cc/三个平台都有:可以直接点上面的按钮,找到自己所用电脑的平台,就可以下载。也可以转到Githubreleasepage下载。3、安装:点击【安......
  • idea git 提交代码(commit)代码后,没有未push后怎么撤回
    1.方法一 第二步: HEAD~1--->Reset---> 右键项目--》 或者 接下来----》 提醒-----------------  提醒---------   提醒-------------(重要的话说三遍),如果本地写很多代码逻辑,一定做好备份直接选择远程分支,checkoutandrebase(做好本地新写未提交......
  • 【Linux驱动】sysfs系统文件修改666权限
     #无意中发现的方法#1.环境刚开始写法:staticssize_ttest_modem_show(.............staticssize_ttest_modem_store(...............staticCLASS_ATTR_RW(test_modem); staticintprobe{.......  modem_class=class_create(THIS_MODULE,"test_modem");......
  • 「Mac&Linux」一次基于X和蒲公英组网的远程桌面尝试
    因为某些原因我必须在远程条件下使用带图形环境的Ubuntu工作。虽然说有向日葵和ToDesk这种远程控制工具,但是后者经常莫名其妙蹦个错误告诉我连不上网络(指的是Mac上的这个软件连不到它公司自己的网络,连我这个账号在ToDesk上有哪些在线设备都不知道),前者怎么说呢...我已经受够远程桌......
  • Linux常用命令
    一.常用命令1.whereis文件查询命令文件位置(如cd,ping)2.File查看文件的类型3.Who查看有谁登录该系统,当前在线的用户4.Pwd查看文件当前所在路径5.Clear清屏6.Uname-a查看内核信息7.Echo打印8.History显示所敲命令的历史,9.History-c清除所敲命令的历史10......
  • Linux调度器:进程优先级
    一、前言本文主要描述的是进程优先级这个概念。从用户空间来看,进程优先级就是nicevalue和schedulingpriority,对应到内核,有静态优先级、realtime优先级、归一化优先级和动态优先级等概念,我们希望能在第二章将这些相关的概念描述清楚。为了加深理解,在第三章我们给出了几个典型数......
  • Linux磁盘-磁盘操作命令
    作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。Linux磁盘涉及到的命令不是很多,但是在实际运维中的作用却很大,因为Linux系统及业务都会承载到硬盘上。如果磁盘使用和配置不合理,可能会引起系统无法启......
  • Linux磁盘-MBR&GPT
    作者介绍:简历上没有一个精通的运维工程师。希望大家多多关注作者,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。Linux磁盘涉及到的命令不是很多,但是在实际运维中的作用却很大,因为Linux系统及业务都会承载到硬盘上。如果磁盘使用和配置不合理,可能会引起系统无法启......