安装jenkins最新版本初始化配置及使用JDK1.8构建项目详细讲解

导读

    • 1.安装
      • 1.1.相关网址
      • 1.2.准备环境
      • 1.3.下载安装
    • 2. 配置jenkins
      • 2.1.安装插件
      • 2.2.配置全局工具
      • 2.3.系统配置
    • 3. 使用
      • 3.1.配置job
      • 3.2.构建

提示:如果只想看如何使用jdk1.8构建项目,直接看3.1即可。

1.安装

1.1.相关网址

Jenkins官网:https://jenkins.io/ 或 https://www.jenkins.io/zh/download/
Jenkins官网文档:https://www.jenkins.io/zh/doc/
jenkins安装包:http://mirrors.tuna.tsinghua.edu.cn/jenkins/redhat/
jenkins插件库: https://plugins.jenkins.io/
清华镜像:http://updates.jenkins-ci.org/download/war/

1.2.准备环境

Jenkins依赖:
Maven 版本3.3.9以上 用于java项目的构建
去官网下载:https://maven.apache.org/download.cgi

Jdk 版本11以上 运行jenkins
官网下载:https://www.oracle.com/cn/java/technologies/downloads/

Git 直接使用yum安装即可。

1.3.下载安装

Jenkins下载地址:https://mirrors.jenkins.io/war-stable/

注意:目前jenkins插件对于都是基于2.3xx以上的jenkins的,要求使用jdk11以上,所以最好安装最新版本的jenkins。否者无法安装所需插件。

登录linux服务器,使用wget命令下载jenkins包。

创建文件夹

mkdir /opt/jenkins/

切换目录

cd /opt/jenkins/

下载war包

wget https://mirrors.jenkins.io/war-stable/2.452.2/jenkins.war

下载完毕后可以启动jenkins服务了。
创建启动脚本

vi start.sh

编辑内容

export PATH=/opt/jenkins/jdk-11.0.2/bin:$PATH
java -versionnohup java -server -Xms1024m -Xmx2048m -XX:PermSize=256m -XX:MaxPermSize=512m -jar jenkins.war --httpPort=16060 & >/dev/nullecho "启动成功"

由于linux主要使用jdk8,启动jenkins 需要jdk11所以需要在启动时临时设置java path为jdk11。
nohup 用来后台运行java启动应用进程。

保存后运行

sh start.sh

服务启动后,访问http://ip:16060
在这里插入图片描述
从/root/.jenkins/secrets/initialAdminPassword获取获取初始密码

选择安装推荐的插件或者选择插件来安装
除非你非常明确的知道自己需要哪几种插件,不然就安装推荐的插件
(如果安装失败也别慌, 进入系统管理-> 插件管理 中可以自行安装/或卸载 对应插件)

在这里插入图片描述
配置访问地址(默认即可,也可按需更改):
在这里插入图片描述
在这里插入图片描述

点击开始使用jenkins 就可以使用jenkins了

2. 配置jenkins

2.1.安装插件

常用插件如下:
①:Git Parameter git参数
②:Localization: Chinese (Simplified) 简体中文包
③:SSH server ssh服务器
④:Build With Parameters 输入框式的参数(可选)
⑤:Persistent Parameter 下拉框式的参数(可选)
⑥:SSH ssh配置
⑦:Publish Over SSH 通过SSH发送构建好的jar包或war包
⑧:Role-based Authorization Strategy (可选用户权限)

进入Plugins
在这里插入图片描述

选择可安装插件,输入要安装的查询,点击安装,安装对应的插件。
在这里插入图片描述

2.2.配置全局工具

配置工具
在这里插入图片描述

Maven配置
配置maven路径和settings文件
在这里插入图片描述
在这里插入图片描述

Git用默认就行
在这里插入图片描述

Jdk安装
在这里插入图片描述

2.3.系统配置

在这里插入图片描述

配置Publish over SSH

因项目需要将jar包发送到应用服务器上,所以要配置ssh传输服务器。
在这里插入图片描述
可以选择使用密码或者密钥方式认证。

3. 使用

3.1.配置job

3.1.1.新建ITEM
在这里插入图片描述

因为我们的项目需要使用jdk8构建,而jenkins 高版本的maven集成插件默认也会使用jenkins所需的jdk11构建项目。所以切记不能使用maven构建项目,只能选择构建自由风格的项目。

在这里插入图片描述

3.1.2.配置如何处理旧的构建
在这里插入图片描述

3.1.3.配置代码仓库
在这里插入图片描述

3.1.4.构建配置
由于没有使用maven插件,这里需要自己配置构建步骤
在build steps 选择增加构建步骤
在这里插入图片描述

选择maven后配置如下:
在这里插入图片描述
3.1.5.增加构建后操作
选择通过ssh发送文件
在这里插入图片描述
在这里插入图片描述
business.sh是用来启动服务用的:

# 获取当前日期和时间,并赋值给变量date
date=$(date +"%Y%m%d%H%M%S")cd /home/zydb_run/jarecho "停止服务"
sh /home/zydb_run/sh/business.sh stop# 重命名yusp-plus-business.jar文件,添加当前日期和时间作为后缀
cd /home/zydb_run/jar
mv /home/zydb_run/jar/yusp-plus-business.jar "/home/zydb_run/jar/yusp-plus-business.jar_$date"mv deploy/yusp-plus-business.jar yusp-plus-business.jarsh /home/zydb_run/sh/business.sh start

如果想要在构建中显示执行过程详细内容,需要勾选
在这里插入图片描述
为了更好查询问题,建议增加归档,选择构建后操作:
在这里插入图片描述
归档所有打包生成的jar包,可以根据自己需要配置。
在这里插入图片描述

3.2.构建

在这里插入图片描述

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

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

相关文章

RabbitMq如何保证消息的可靠性和稳定性

RabbitMq如何保证消息的可靠性和稳定性 rabbitMq不会百分之百让我们的消息安全被消费,但是rabbitMq提供了一些机制来保证我们的消息可以被安全的消费。 消息确认 消息者在成功处理消息后可以发送确认(ACK)给rabbitMq,通知消息已…

Hadoop-25 Sqoop迁移 增量数据导入 CDC 变化数据捕获 差量同步数据 触发器 快照 日志

章节内容 上节我们完成了如下的内容: Sqoop MySQL迁移到HiveSqoop Hive迁移数据到MySQL编写脚本进行数据导入导出测试 背景介绍 这里是三台公网云服务器,每台 2C4G,搭建一个Hadoop的学习环境,供我学习。 之前已经在 VM 虚拟机…

计算机的错误计算(二十九)

摘要 (1)讨论近似值的错误数字个数。有时,遇到数字9或0, 不太好确认近似值的错误数字个数。(2)并进一步解释确认计算机的错误计算(二十八)中一个函数值的错误数字个数。 理论上,我…

py2neo常用语句

1.连接数据库 Neo4j服务器默认的端口号就是7474,所以本地的主机就是"http://localhost:7474" 。 默认的用户名密码都是neo4j, # 连接数据库,输入个人配置 graph Graph("http://localhost:7474//browser/", auth("neo4j"…

百日筑基第十九天-一头扎进消息队列2

百日筑基第十九天-一头扎进消息队列2 消息队列的通讯协议 目前业界的通信协议可以分为公有协议和私有协议两种。公有协议指公开的受到认可的具有规 范的协议,比如 JMS、HTTP、STOMP 等。私有协议是指根据自身的功能和需求设计的协 议,一般不具备通用性&…

数学建模·熵权法

熵权法 一种计算评价指标之间权重的方法。熵权法是一种客观的方法,没有主观性,比较可靠。 具体定义 熵权法的核心在于计算信息熵,信息熵反映了一个信息的紊乱程度,体现了信息的可靠性 具体步骤 Step1正向化处理 将所以评价指标转…

智能家居装修怎么布线?智能家居网络与开关插座布置

打造全屋智能家居。计划的智能家居方案以米家系列为主,智能家居联网方案以无线为主。装修前为了装备智能家居做了很多准备工作,本文深圳侨杰智能分享一个智能家居装修和布线方面的心得与实战知识。希望能对大家的装修有所帮助。 ​1.关于网络 如果房子比…

HTML基本标签(二)

HTML基本标签&#xff08;二&#xff09; 表格标签 table媒体元素audio 音频vido 视频 form 表单元素 表格标签 table <!-- caption 代表表格标题相关属性border 边框cellpadding 设置单元格内填充cellspacing 设置单元格间空隙width 设置表格宽度&#xff0c;默认是内容撑…

Python-数据爬取(爬虫)

~~~理性爬取~~~ 杜绝从入门到入狱 1.简要描述一下Python爬虫的工作原理&#xff0c;并介绍几个常用的Python爬虫库。 Python爬虫的工作原理 发送请求&#xff1a;爬虫向目标网站发送HTTP请求&#xff0c;通常使用GET请求来获取网页内容。解析响应&#xff1a;接收并解析HTTP响…

结合实体类型信息1——基于本体的知识图谱补全深度学习方法

1 引言 1.1 问题 目前KGC和KGE提案的两个主要缺点是:(1)它们没有利用本体信息;(二)对训练时未见的事实和新鲜事物不能预测的。 1.2 解决方案 一种新的知识图嵌入初始化方法。 1.3 结合的信息 知识库中的实体向量表示&#xff0b;编码后的本体信息——>增强 KGC 2基…

基于AT89C51单片机超声波水位液位控制系统设计(含文档、源码与proteus仿真,以及系统详细介绍)

本篇文章论述的是基于AT89C51单片机的1616点阵LED显示器字符滚动显示设计的详情介绍&#xff0c;如果对您有帮助的话&#xff0c;还请关注一下哦&#xff0c;如果有资源方面的需要可以联系我。 目录 设计任务与要求 原理图 仿真图 代码 系统论文 资源下载 设计任务与要求…

处理线程安全的列表CopyOnWriteArrayList 和Collections.synchronizedList

ConcurrentModificationException 是 Java 中的一种异常&#xff0c;用于指示在迭代集合时&#xff0c;该集合的结构发生了并发修改。 在 Java 中&#xff0c;许多集合类&#xff08;如 ArrayList, HashMap 等&#xff09;都不是线程安全的。如果一个线程在迭代集合的同时&…

IDEA的JAVA版本没有8怎么办

问题&#xff1a; 很多小伙伴会出现如下的情况&#xff0c;java的版本很高&#xff0c;没有8 解决 更换IDEA内置的Server URL的镜像地址 就是这个 把其中的地址换成 https://start.aliyun.com/ https://start.aliyun.com/ 我们可以看到JAVA 8就出现了

Vue Router 4:构建高效单页面应用的路由管理

引言 Vue Router的重要性在于它极大地简化了单页面应用(SPA)的开发流程。通过Vue Router&#xff0c;开发者可以轻松地将URL映射到对应的组件&#xff0c;实现页面的无刷新跳转&#xff0c;从而提升用户体验。 安装和设置Vue Router 4 如何在Vue 3项目中安装Vue Router 4 1…

期货量化交易客户端开源教学第四节——交易接口协议

指令介绍: 01----09:服务端发送到客户端指令 10----49:客户端发送操作指令 50----59:客户端与服务端通讯指令 60----99:股票接口与服务端交互指令 --------------------------------------------------- 02:商品行情 03:用户信息接收 04:用户资产信息接收 ----发送到…

SpringBoot的动态代理默认用的哪个???

在 Spring Boot 中&#xff0c;动态代理的默认实现方式取决于被代理的对象的类型和具体配置&#xff1a; JDK 动态代理&#xff1a; 当代理的对象实现了一个或多个接口时&#xff0c;Spring 默认使用 JDK 动态代理。JDK 动态代理只能代理实现了接口的类。 CGLIB 动态代理&…

Python-PLAXIS自动化建模技术与典型岩土工程案例

有限单元法在岩土工程问题中应用非常广泛&#xff0c;很多软件都采用有限单元解法。在使用各大软件进行数值模拟建模的过程中&#xff0c;岩土工程中的各种问题&#xff08;塑性、渗流、固结、动力、稳定安全、热力TM&#xff09;&#xff0c;一步一步地搭建自己的Plaxis模型&a…

dm-verity hashtree的结构

参考了&#xff1a;实现 dm-verity | Android Open Source Project (google.cn)。基于这个添加了一层原始数据&#xff0c;便于理解。 结构图如下&#xff1a; 对hashtree结构图的解释&#xff1a; dev data&#xff1a;表示我们的分区数据。这里我们将dev data按照指定的大…

【C++进阶学习】第六弹——set和map——体会用C++来构建二叉搜索树

set和map基础&#xff1a;【C进阶学习】第五弹——二叉搜索树——二叉树进阶及set和map的铺垫-CSDN博客 前言&#xff1a; 在上篇的学习中&#xff0c;我们已经学习了如何使用C语言来实现二叉搜索树&#xff0c;在C中&#xff0c;我们是有现成的封装好的类模板来实现二叉搜索树…

第二讲 数据结构

#数组模拟链表 #include <iostream> using namespace std; const int N 100010; int head ,e[N], ne[N],idx; //ne[i]表示节点i的next指针是多少 //e[i]表示节点i 的值 //head 表示头结点的下标 //idx 存储当前已经用了哪个点 void init() {head -1;//头结点指向下标为…