Jenkins-拉取代码

news2024/11/15 3:38:23

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 一、Jenkins环境配置
    • (一)配置Maven环境
      • (1)Maven下载
      • (2)将Maven上传服务器
      • (3)安装Maven
      • (4)Liunx配置Maven环境
      • (5)重新加载配置文件
      • (6)Maven配置中央仓库地址
      • (7)Jenkins配置环境
        • 1、全局配置
        • 2、系统配置
  • 二、安装Git工具
    • (一)检查本机是否安装Git
    • (二)安装git工具
    • (三)检查git是否安装成
  • 三、Jenkins下载插件
    • (一)Git插件
    • (二)Maven插件
    • (三)凭证插件
  • 四、拉取代码
    • (一) 账号密码凭证拉取
    • (二) SSH凭证拉取代码
      • (一)生成公钥和私钥
      • (二)查看生成的秘钥
      • (三)将生成的公钥存放在Gitee中
      • (四)使用SSH凭证拉取代码
  • 五、Jenkins的一些配置
    • (一)设置Jenkins的插件下载地址
      • (1)默认下载文件
      • (2)修改文件默认下载地址
      • (3)修该插件设置的默认URL
    • (二)设置Jenkins核心配置
      • (1)Jenkins的系统配置文件
  • 六、拉取代码打包
  • 总结


前言

提示:这里可以添加本文要记录的大概内容:

搭建Jenkins服务目的是为了后期做自动化流水线的,因此成功安装Jenkins后,我们需要为后期做流水线搭建Jenkins环境配置,例如:我们使用Jenkins从代码仓库(Gitee或GitLab)上拉取代码。这个过程中,首先保证自己服务器上有Git工具,其次需要Jenkins服务与代码仓库之间做好通信管理–授权认证。认证主要两种方式:用户名-密码认证、SSH用户和密钥。因此Jenkins中需要安装凭证管理插件,使用凭证管理插件来进行服务通信,当Jenkins成功拉取代码后,我们要对项目进行编译、打包。我们知道Java开发的项目,打包需要Maven工具,因此需要在Jenkins服务中配置Maven。


提示:以下是本篇文章正文内容,下面案例可供参考

一、Jenkins环境配置

(一)配置Maven环境

(1)Maven下载

Maven官方下载地址:

https://maven.apache.org/

Liunx服务器下载时二进制的tar包
在这里插入图片描述

(2)将Maven上传服务器

在/opt目录下新建一个 install 文件,用来存放我们所需的安装包

mkdir /opt/install

在这里插入图片描述

(3)安装Maven

创建Maven的安装目录

mkdir /opt/maven

解压刚才我们上传的Maven的tar包

tar -xzf apache-maven-3.9.8-bin.tar.gz

在这里插入图片描述
将解压的Maven文件移动到我们之前创建的安装文件中 /opt/maven

mv apache-maven-3.9.8/* /opt/maven

在这里插入图片描述

(4)Liunx配置Maven环境

在liunx配置文件中新增maven的环境变量

vim /etc/profile

添加maven的环境变量

MAVEN_HOME=/opt/maven
:$MAVEN_HOME/bin # 在PATH后面追加这行命令

为了方便查看配置,我将整个Java环境(在安装Jenkins之前已经安装配置过了)和Maven环境配置信息展示如下:

# java环境变量
JAVA_HOME=/usr/lib/jvm/java-17-openjdk-17.0.1.0.12-2.el8_5.x86_64
JRE_HOME=/usr/lib/jvm/jre-17-openjdk-17.0.1.0.12-2.el8_5.x86_64
# Maven环境变量
MAVEN_HOME=/opt/maven
PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

在这里插入图片描述

(5)重新加载配置文件

重新加载配置文件

source /etc/profile

查看环境配置是否生效

java --version
mvn --version

在这里插入图片描述

(6)Maven配置中央仓库地址

安装完Maven后,我们还需要配置Maven中央仓库地址,以及Maven下载的Jar包的存放路径
进入Maven的配置文件目录

cd /opt/maven/conf

编辑setting文件

vim settings.xml

将Maven下载的jar修改为当前这个文件目录下

/usr/local/repo

在这里插入图片描述

如果你的服务器上没有这个文件 /usr/local/repo 记得手动创建这个文件,并且设置文件权限(关键重点,否则后续打包会失败!!!!)

mkdir /usr/local/repo # 创建文件
chmod 777 /usr/local/repo #将这个文件修改为所有人可用

这里配置中央仓库地址可以任意,也可以将你本地的开发环境的Maven中央仓库地址复制过来。

<mirror>
 <id>mirrorId</id>
  <mirrorOf>repositoryId</mirrorOf>
  <name>Human Readable Name for this Mirror.</name>
  <url>https://repo.maven.apache.org/maven2</url>
</mirror>

在这里插入图片描述
以下命令可以检测仓库地址是否可用

curl -I https://repo.maven.apache.org/maven2
https://maven.aliyun.com/mvn/view 

(7)Jenkins配置环境

刚刚上述过程只是我们Liunx服务器上配置 jdk 和 Maven 的环境,Jenkins是无法识别我们服务器上Java和Maven的配置,因此我们需要告诉Jenkins,我们服务器所安装jdk和maven配置路径。

1、全局配置

在系统管理 -> 全局工具配置 -> JDK安装 和 Maven安装
在这里插入图片描述

在这里插入图片描述

2、系统配置

在系统管理 -> 系统配置 ->全局属性 ->环境变量
在这里插入图片描述

记得上述操作需要点击 应用并保存。至此,Jenkisn中的Java和Maven环境搭建完成。

二、安装Git工具

(一)检查本机是否安装Git

代码如下(示例):

git --version

没有输出git版本号就是未安装git

(二)安装git工具

yum install git -y

(三)检查git是否安装成

git --version

出现git版本信息代表安装成功

三、Jenkins下载插件

Jenkins下载插件在 系统管理 ->插件管理 -> 点击可选插件,输入需要安装的插件名称,查询,点价安装即可

(一)Git插件

这个插件是为了方便后续我们去代码仓库拉取代码
在这里插入图片描述

(二)Maven插件

点击 新建任务 ,若新建任务中没有,Maven构建选项,按照上述Jenkins下载插件哪里,输入Maven,点击安装即可,就会出现Maven构建选项。
这个插件是为了Jenkins拉取代码后调用Maven工具对项目进行打包
在这里插入图片描述

(三)凭证插件

在系统管理下没有凭证管理这个插件,也是按照上述安装插件方式进行安装,安装重启Jenkins后就会看到凭证管理,凭证管理插件是这个-Credentials Binding Plugin
在这里插入图片描述

四、拉取代码

(一) 账号密码凭证拉取

因为我们的案例是一个微服务项目,因此我们这里就用Maven来构建一个简单拉取代码的流水线
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
配置成功后
在这里插入图片描述
学会通过控制台查看日志信息
在这里插入图片描述
进入到jenkins的默认工作目录,查看我们拉取的代码

cd /var/lib/jenkins/workspace

在这里插入图片描述

(二) SSH凭证拉取代码

上述我们使用用户名和密码凭证来拉取代码,假设项目之前做Jenkins的流水线采用的Gitee账号的密码忘记,或者账号注销了,那咱们流水线拉取代码就无法实现了,因此对于服务之间之间认证,最好采用SSH认证。
我们可以使用SSH生成一份公钥和私钥密文文件,将公钥存在在代码仓库(Gitee或GitLab)服务上,然后在Jenkins服务中存放私钥。后续通过SSH认证拉取代码即可。

(一)生成公钥和私钥

ssh-keygen -t rsa

在这里插入图片描述

(二)查看生成的秘钥

cd /root/.ssh
ll

在这里插入图片描述

(三)将生成的公钥存放在Gitee中

登录Gitee后,点击头像,选择设置,找到SSH公钥
在这里插入图片描述

在这里插入图片描述

我们可以先在服务器上验证是否能访问Gitee平台

ssh -T git@gitee.com

在这里插入图片描述

(四)使用SSH凭证拉取代码

重新新建一个maven构建任务,在任务的配置->源码管理->Git,选择SSH凭证认证
在这里插入图片描述

在这里插入图片描述

五、Jenkins的一些配置

(一)设置Jenkins的插件下载地址

我们使用Jenkins会不断更新下载新的插件,当我们安装jenkins后,jenkins的默认下载地址是国外的,因此我们需要将jenkins的默认下载地址修改为国内一些开源地址,这样能提升jenkins下载插件速度

(1)默认下载文件

/var/lib/jenkins/updates/default.json

(2)修改文件默认下载地址

执行如下命令之前,可以查看 default.json 文件中的下载地址,然后执行下面命令后,再次查看是否替换成功

sed -i 's/https:\/\/updates.jenkins.io\/download/https:\/\/mirrors.tuna.tsinghua.edu.cn\/jenkins/g' default.json && sed -i 's/https:\/\/www.google.com/https:\/\/www.baidu.com/g' default.json

(3)修该插件设置的默认URL

https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json

在这里插入图片描述

(二)设置Jenkins核心配置

我们安装Jenkins后,Jenkins的默认端口就是8080对吧,假设我们服务器上在安装jenkins之前就被占用了,或者我们之后部署其他项目时,需要用到8080端口,那么这样就会造成jenkins服务与其他部署的服务端口冲突,因为我们需要了解jenkins的一些核心配置

(1)Jenkins的系统配置文件

此文件包含了jenkins默认端口号,用户组,工作目录

vim /usr/lib/systemd/system/jenkins.service

六、拉取代码打包

将用户名-密码凭证构建的项目和SSH凭证的项目分别构建,找到拉取的项目的target包,然后使用 java -jar xxx.jar命令运行项目
在这里插入图片描述
在这里插入图片描述
然后进入到jenkins的工作目录,运行jar包

在这里插入图片描述
浏览器打开服务的swagger查看项目是否能成功访问
在这里插入图片描述


总结

以上就是jenkins拉取代码的简单过程,这种方式只是简单测试jenkins中的环境是否配置成功,熟悉jenkins中的一些常用插件。后续会通过pipline脚本来做CI/CD操作

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

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

相关文章

解决Win11点击睡眠后,唤醒系统,程序全部关闭的问题

网上只是给出修改“在此时间后关闭硬盘”的时间&#xff0c;结果点击【睡眠】&#xff0c;重新唤醒系统&#xff0c;程序依旧全部关闭。这是因为点击【睡眠】时&#xff0c;启动了【休眠】&#xff0c;Win11系统中&#xff0c;休眠再唤醒系统&#xff0c;会导致程序全部关闭。我…

如何在 3 分钟内免费在 AWS 上运行 RStudio

欢迎来到雲闪世界。谈到数据分析&#xff0c;我有理由从本地计算机迁移到云端。最突出的是&#xff0c;您可以运行无限数量的机器&#xff0c;而无需拥有或维护它们。此外&#xff0c;您可以在几分钟内根据需要扩大或缩小规模。如果您选择运行 t2.micro 服务器&#xff0c;您可…

ant design pro 如何去保存颜色

上图 就是实现这样的效果 后端是这样的&#xff0c;这个颜色肯定是存到字符串里的 这是第一步 import mongoose, { Schema, Document } from mongoose;interface IDiscountCard extends Document {title: string;subtitle: string;image: string;shopUrl: string;bgColor: s…

望繁信科技荣膺上海市浦东新区博士后创新实践基地称号

近日&#xff0c;上海望繁信科技有限公司&#xff08;简称“望繁信科技”&#xff09;凭借在大数据流程智能领域的卓越表现&#xff0c;成功入选上海市浦东新区博士后创新实践基地。这一荣誉不仅是对望繁信科技创新能力和技术实力的高度认可&#xff0c;也标志着公司在推动产学…

基于springboot养老院管理系统pf

TOC springboot332基于springboot养老院管理系统pf 第1章 绪论 1.1选题动因 当前的网络技术&#xff0c;软件技术等都具备成熟的理论基础&#xff0c;市场上也出现各种技术开发的软件&#xff0c;这些软件都被用于各个领域&#xff0c;包括生活和工作的领域。随着电脑和笔记…

Hive3:简单ETL实操案例

一、ETL概念简介 ETL&#xff1a; E&#xff0c;Extract&#xff0c;抽取 T&#xff0c;Transform&#xff0c;转换 L&#xff0c;Load&#xff0c;加载 从A抽取数据(E)&#xff0c;进行数据转换过滤(T)&#xff0c;将结果加载到B(L)&#xff0c;就是ETL 二、情景描述 聊天平…

数据结构(邓俊辉)学习笔记】优先级队列 04——完全二叉堆:插入与上滤

文章目录 1. 上滤2. 实例3. 实现4. 效率 1. 上滤 好&#xff0c;接下来我们就来学习在一个完全二叉堆中&#xff0c;如何有效地插入一个新的元素。我们将会看到插入过程中的核心技巧是所谓的 ”上滤“ 过程。 为了在完全二叉堆中引入一个新的词条 e&#xff0c;我们只需在物…

【网络编程】TCP实现网络通信(C语言、Ubuntu实现)

TCP服务器通信模型&#xff1a;&#xff08;分为以下6个步骤&#xff09; 1、sfd socket(); //创建一个用于连接的套接字文件描述符 2、bind(); //为服务器套接字绑定ip地址和端口号&#xff0c;为了让客户端额能够找到服务器 3、l…

C++第三十七弹---深入理解红黑树:旋转、着色与性质维护

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】 目录 1 红黑树 1.1 红黑树的概念 1.2 红黑树的性质 1.3 红黑树节点的定义 1.4 红黑树结构 1.5 红黑树的插入操作 1.6 红黑树的验证 1.7 红黑树与…

XSS的一些相关案例及DOM破坏的案例

目录 第一关 第二关 第三关 第四关 第五关 第六关 第七关 第八关(DOM破坏) 网址&#xff1a;XSS Game - Learning XSS Made Simple! | Created by PwnFunction 第一关 来分析一下代码 就是一个URL类里进行一个get接收参数(somebody)如果没参数就默认接收(Somebody)这…

C++仿C#实现事件处理

测试 #include "beacon/beacon.hpp" #include <cstdio> #include <thread>class mouseEvent : public beacon::args { public:mouseEvent(int x, int y) : x(x), y(y) {}int x, y; };class object : public beacon::sender { public:};class mouseHandl…

6大企业必备的公司常用的加密软件推荐|2024公司常用加密软件推荐!

2024年上半年&#xff0c;企业对于数据加密的需求日益增长&#xff0c;以确保数据在存储和传输过程中的安全性。以下是六款企业常用的加密软件推荐&#xff0c;它们各具特色&#xff0c;能够满足不同企业的加密需求&#xff1a; 1.NordLocker&#xff1a; 特点&#xff1a;它是…

【Linux系列】telnet使用入门

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

什么是视频比特率?与视频时长是什么关系

​ ‌比特率是指单位时间内传输或处理的比特的数量&#xff0c;单位为‌bps(‌bit per second)。‌ 比特率经常用于描述在电信和计算领域中数据传输的速度&#xff0c;也可以作为衡量音频和视频文件数据率的指标。比特率越高&#xff0c;传送的数据越大&#xff0c;音频或视频…

Ubuntu安装Anaconda3

本文详细阐述了在 Ubuntu 系统中安装 Anaconda3 的完整流程。包括 Anaconda3 安装包的获取途径&#xff0c;具体安装过程中的每一个步骤及注意事项&#xff0c;还有安装后的环境变量设置和安装成功的验证方法。旨在为 Ubuntu 用户提供清晰、易懂且准确的 Anaconda3 安装指南&am…

Windows Microsoft Edge 浏览器 配置【密码】

在浏览 Web 时&#xff0c;Microsoft Edge 可以轻松保存密码。 在桌面或移动设备上的 Edge 浏览器中输入新密码时&#xff0c;Microsoft Edge 会询问你是否要记住用户名和密码。 下次访问该网站时&#xff0c;浏览器将完成帐户信息的填写。 如果使用 Microsoft 帐户登录到 Edg…

重塑业务生态,Vatee万腾平台:引领行业变革的新引擎

在数字经济浪潮汹涌的今天&#xff0c;传统行业的边界正被不断模糊与重塑&#xff0c;新兴技术如云计算、大数据、人工智能等正以前所未有的速度改变着商业世界的面貌。在这一背景下&#xff0c;Vatee万腾平台应运而生&#xff0c;以其独特的创新模式和强大的技术实力&#xff…

i.MX6裸机开发(1):环境搭建

1. 熟悉sdk SDK&#xff08;Software Development Kit&#xff09;是NXP针对其官方评估 版的软件开发包&#xff0c;可以在NXP的官网下载得到。SDK中包含了 各种程序范例&#xff0c;我们心心念念的固件库也包含在它里边。 NXP官网链接&#xff1a;https://www.nxp.com 未登录…

Camera基础知识系列(2)——对焦和变焦

目录 一. 引言 二. 对焦 定义&#xff1a; 原理 三. 变焦 定义 用途 四. 总结 一. 引言 这一节简单聊一下对焦和变焦&#xff0c;这两个是摄影种出现的高频词&#xff0c;但这里把它们放一起讲&#xff0c;主要还是因为它们在字面上就一字之差&#xff0c;初次接触…

XSS DOM破坏实战案例

目录 案例一 思考 源码分析 查找问题 实现 案例二 查看源码 问题查找 实现 实验环境&#xff1a;DOM clobbering | Web Security Academy (portswigger.net) 案例一 里面是一篇篇的博客&#xff0c;点击进去里面是一些评论 思考 尝试一些常规的xss 没什么效果... 他将…