jenkins部署job

news2024/12/22 19:58:20


apt install fontconfig    openjdk-11-jre
wget   https://mirrors.tuna.tsinghua.edu.cn/jenkins/war/2.429/jenkins.war

deb包安装
wget https://mirrors.tuna.tsinghua.edu.cn/jenkins/debian-stable/jenkins_2.414.3_all.deb


dpkg -i jenkins_2.414.3_all.deb  

访问 http://192.168.1.51:8080/

添加凭证,后面任务添加job要用到

这个是gitlab创建的用户

在这里插入图片描述

添加git仓库
http://192.168.1.50/devops/spring-boot-helloWorld.git/
在这里插入图片描述

报错:ERROR: Couldn’t find any revision to build. Verify the repository and branch configuration for this job.
Finished: FAILURE

分支填写不正确
在这里插入图片描述

编译

打包

构建服务器

构建工具

安装maven环境
在这里插入图片描述

安装mave构建插件

在这里插入图片描述

作业:
1、freestyle完成helloworldJSP应用的构建和部署;
(1)shell构建
(2)调用顶层maven目标
(3)使用maven job
2、部署到单个tomcat环境;部署多个tomcat环境;
3、扩展:使用ansible插件,调用ansible完成应用部署;

通过jenkins中mave编译

jenkins中全局配置工具添加git
在这里插入图片描述

复制项目并修改为jgitapache
在这里插入图片描述
添加mvn命令
在这里插入图片描述
编译成功
在这里插入图片描述

项目

使用luohuiwen用户新建项目
导入
在这里插入图片描述
jenkins新建job并配置
在这里插入图片描述

在这里插入图片描述

通过jenkins部署应用到tomcat

部署jenkins

安装docker和docker-compose

克隆仓库并编译
152 git clone https://github.com/iKubernetes/learning-jenkins-cicd.git
153 ls
154 cd learning-jenkins-cicd/
155 ls
156 cd 04-tomcat-with-manager/
docker-comose build
docker-comose up

访问tomcat

http://192.168.1.51:8088/manager

安装插件
在这里插入图片描述
添加job并构建

在这里插入图片描述

生成的war包名字:[INFO] Building war: /var/lib/jenkins/workspace/Helloworld-jsp/target/helloworldJSP-v0.0.1.war

添加构建后操作

在这里插入图片描述

构建成功后

访问tomcat,可以访问到应用
在这里插入图片描述

发布到多个tomcat

启动3个tomcat
cd /learning-jenkins-cicd/04-tomcat-with-manager
docker-compose -f docker-compose-multi-instances.yaml build
239 docker-compose -f docker-compose-multi-instances.yaml up -d
240 ls
241 vi docker-compose-multi-instances.yaml
242 docker-compose -f docker-compose-multi-instances.yaml up -d

添加多个tomcat配置

在这里插入图片描述
验证8089 8090 8091端口成功

maven修改阿里源配置

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

添加阿里源配置

<mirror>
    <id>nexus-aliyun</id>
    <mirrorOf>central</mirrorOf>
    <name>Nexus aliyun</name>
    <url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

在这里插入图片描述

在这里插入图片描述

清理缓存
root@ubuntu20:/var/lib/jenkins/.m2/repository# rm -rf ./*

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

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

相关文章

波形的哪些事

一.静音波形制造(波形卡顿制造) 二.pop波形制造 三.示波器探头设置 四.示波器的差分输入和单端输入的接法不一样 差分的接法&#xff0c;需要配差分探头(如下图)&#xff0c;差分探头的两个脚分别和功放输出通道的两个脚连接 单端的接法&#xff0c;需要单端的探头&#xff0c…

【算法与数据结构】216、LeetCode组合总和 III

文章目录 一、题目二、解法三、完整代码 所有的LeetCode题解索引&#xff0c;可以看这篇文章——【算法和数据结构】LeetCode题解。 一、题目 二、解法 思路分析&#xff1a;本题可以直接利用77题的代码【算法与数据结构】77、LeetCode组合&#xff0c;稍作修改即可使用。   …

Linux文件系统的功能规划

对于运行的进程来说&#xff0c;内存就像一个纸箱子&#xff0c;仅仅是一个暂存数据的地方&#xff0c;而且空间有限。如果我们想要进程结束之后&#xff0c;数据依然能够保存下来&#xff0c;就不能只保存在内存里&#xff0c;而是应该保存在外部存储中。就像图书馆这种地方&a…

第三章:人工智能深度学习教程-基础神经网络(第二节-ANN 和 BNN 的区别)

在本文中&#xff0c;我们将了解单层感知器及其使用 TensorFlow 库在Python中的实现。神经网络的工作方式与我们的生物神经元的工作方式相同。 生物神经元的结构 生物神经元具有三个基本功能 接收外部信号。 处理信号并增强是否需要发送信息。 将信号传递给目标细胞&#x…

[ Linux Busybox ] flash_eraseall 命令解析

文章目录 相关结构体flash_eraseall 函数实现flash_eraseall 实现流程图 文件路径&#xff1a;busybox-1.20.2/miscutils/flash_eraseall.c 相关结构体 MTD 相关信息结构体 struct mtd_info_user {__u8 type; // MTD 设备类型__u32 flags; // MTD设…

网络安全深入学习第八课——正向代理(工具:ReGeorg)

文章目录 一、环境配置二、开始模拟1、拿下跳板机的Webshell权限&#xff0c;并上传shell文件1.1、查看跳板机网络环境1.2、查看arp表 2、使用ReGeorg来建立连接2.1、生产ReGeorg隧道文件2.2、上传ReGeorg隧道的PHP脚本到跳板机2.3、连接隧道2.4、尝试浏览器连接 3、使用Proxif…

栈,线性dp,P1310 [NOIP2011 普及组] 表达式的值

P1310 [NOIP2011 普及组] 表达式的值 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 这道题很有意义 题目描述 对于1 位二进制变量定义两种运算&#xff1a; 运算的优先级是&#xff1a; 先计算括号内的&#xff0c;再计算括号外的。 “ ”运算优先于“⊕”运算&#xf…

reduxjs/toolkit的使用

用法&#xff1a; 下载包进行安装&#xff0c;store主入口&#xff0c;hooks简化store(复制粘贴进去即可)&#xff0c;slice相当于store中的模块化&#xff0c;最后在页面根入口导入store&#xff0c;并使用即可 1、安装 npm install reduxjs/toolkit react-redux -D2、目录结…

【网络编程】传输层——TCP协议

文章目录 TCP协议TCP协议格式窗口大小六个标志位确认应答机制超时重传机制连接管理机制三次握手四次挥手 流量控制滑动窗口拥塞控制延迟应答捎带应答面向字节流粘包问题TCP异常情况TCP小结基于TCP的应用层协议TCP与UDP的对比 TCP相关实验CLOSE_WAIT状态实验TIME_WAIT状态实验TI…

为你提供5个解决“找不到msvcp120.dll无法继续执行代码”

在使用电脑计算机运行软件时&#xff0c;我们可能会遇到一些错误提示&#xff0c;其中之一就是“找不到msvcp120.dll无法继续执行代码”。这个问题通常是由于缺少相应的运行库文件或者文件损坏导致的。下面我将为你提供5个解决方法&#xff0c;帮助你解决这个问题。 第1个方法.…

​软考-高级-信息系统项目管理师教程 第四版【第18章-项目绩效域-思维导图】​

软考-高级-信息系统项目管理师教程 第四版【第18章-项目绩效域-思维导图】 课本里章节里所有蓝色字体的思维导图

MATLAB画图由于线段太多导致导出图片模糊的解决办法

Matlab画图如果figure内的线条过多&#xff0c;或者散点过多&#xff0c;导出的图片会模糊&#xff0c;解决方案 解决方法就在于figure的导出设置中。 在设置的渲染选项中&#xff0c;渲染器有两个&#xff0c;分别为painters和OpenGL&#xff0c;分别为矢量格式输出和位图输出…

【原创】java+swing+mysql爱心捐赠管理系统设计与实现

摘要&#xff1a; 爱心捐赠管理系统旨在管理和优化捐赠过程&#xff0c;提高效率&#xff0c;增强透明度&#xff0c;并鼓励更多的个人和企业参与公益捐赠&#xff0c;用户可以捐款或者捐物。本系统采用javaswing界面可视化技术&#xff0c;数据库使用mysql。 功能分析&#…

数据库的进阶增删查改操作(一)

进阶操作 一.约束1.约束类型2.NULL约束3.unique:唯一约束4.default:默认值约束5.primary key:主键约束6.foreign key:外键约束7.check约束(了解内容) 二.表的设计1.一对一2.一对多3.多对多 三.新增四.查询1.聚合函数1.1 count1.2 sum1.3 avg1.4 max1.5 min 2.group by 字句3.ha…

win10虚机扩容C盘

需求&#xff1a; 在虚机管理平台上&#xff0c;将win10虚机的C盘空间扩容至200G&#xff0c;当前空间为100G 操作步骤 1.在虚机平台上&#xff0c;将硬盘1的大小增加至200G 如下图 点击保存&#xff1b; 查看win10虚机&#xff0c;发现C盘空间还是100G&#xff0c;如下图…

【WinForm详细教程八】WinForm中的TreeView控件

文章目录 TreeView 基本的知识属性方法事件 TreeView 案例演示案例一&#xff1a;案例二&#xff1a; TreeView 控件 用于展示分层数据&#xff0c;它以树形结构展示信息&#xff0c;每个节点可以有一个或多个子节点。TreeView 控件允许用户以可展开和可折叠的形式查看复杂的层…

josef约瑟低电压继电器 DY-110 10-109V 辅助电源·DC110V 嵌入式面板安装

DY-110/110V电压继电器 系列型号 DY-110电压继电器&#xff1b;GY-110电压继电器&#xff1b; GDY-110电压继电器&#xff1b;DY-110/AC电压继电器&#xff1b; GY-110/AC电压继电器&#xff1b;GDY-110/AC电压继电器&#xff1b; DL-110电压继电器&#xff1b;GL-110电压…

代码随想录 Day39 动态规划 LeetCode T139 单词拆分 动规总结篇1

前言 在本期开始之前,让我们再回顾一下动规五部曲,并且今天的任务只有一道题,我们顺便也回顾一下之前学过的知识点,动规的前面集中化题型,0-1背包,完全背包,以及很多种遍历顺序,让秋秋和大家娓娓道来. 首先我们回顾一下动态规划的动规五部曲. 1.明确dp数组的元素含义 2.明确dp数…

技术分享 | app自动化测试(Android)--触屏操作自动化

导入TouchAction Python 版本 from appium.webdriver.common.touch_action import TouchAction Java 版本 import io.appium.java_client.TouchAction; 常用的手势操作 press 按下 TouchAction 提供的常用的手势操作有如下操作&#xff1a; press 按下 release 释放 …

Python高级进阶(1)----深入理解Python迭代器与生成器

文章目录 1. 迭代器协议代码示例:2. 生成器基础代码示例:3. 使用yield的高级技巧代码示例:4. 生成器表达式代码示例:迭代器和生成器是Python中实现迭代的两种主要方式,它们都允许用户创建可以遍历数据集的对象。在Python中,迭代器协议是指对象需要遵守__iter__()和__next…