jenkins自动发布java代码

自动化运维之Jenkins 与 Git 实战(二)(Jenkins and Git Practice in Automated Operations and Maintenance Part 2) Maven 是一个软件项目管理及自动构建工具,由 Apache 软件基金会所提供。基于项 目对象模型(缩写:POM)概念,Maven 利用一个中央信息片断来管理一个项目的构建、 报告和文档等步骤。Docker 是一个开源的容器应用引擎,让开发者可以打包他们的应用及依赖包到任意一个可移植的镜像中在前面的 Jenkins 课程中,更多强调的是 Jenkins 使用和项目部署,而本章将结合新项目来实现自动化构建及发布,并将项目打包成镜像上传到私有仓库,来实现一键发布、回滚等操作。 阅读详情

进行实战java代码发布,此利用github私有仓库拉去,jenkins利用maven编译源码后讲包发布致web服务器。

一、git私有仓库创建

可参考GIT笔记中远程仓库搭建部分,此处java源码使用zrlog,将源码pull到github上,将jenkins公钥配置到github上,即可下一波。

二、web服务器tomcat配置

在需要将代码发布的web服务器上需要配置tomcat的manager页面。


 
yum install java-1.8.0-openjdk.x86_64 -y && \ wget -c -O /usr/local/apache-tomcat-9.0.2.tar.gz && \ http://mirrors.tuna.tsinghua.edu.cn/apache/tomcat/tomcat-9/v9.0.2/bin/apache-tomcat-9.0.2.tar.gz && \ cd /usr/local/ && tar -xf apache-tomcat-9.0.2.tar.gz &&\ 

此时tomcat已经安装成功,需要配置manager页面。

需要在/usr/local/tomcat/conf/tomcat-users.xml 添加以下内容。


 
<role rolename="admin"/> <role rolename="admin-gui"/> <role rolename="admin-script"/> <role rolename="manager"/> <role rolename="manager-gui"/> <role rolename="manager-script"/> <role rolename="manager-jmx"/> <role rolename="manager-status"/> <user name="admin" password="kaliarch" roles="admin,manager,admin-gui,admin-script,manager-gui,manager-script,manager-jmx,manager-status" /> 

 

修改完毕如上图,添加manager的role角色权限,其次需要修改manger页面的源控访问,添加jenkins的ip为白名单内。

修改/usr/local/tomcat/webapps/manager/META-INF/context.xml

默认tomcat的manager页面只允许本地的和ipv6的地址,此处我的jenkins服务器ip为:172.20.6.0/24,可根据实际情况来定,支持网段,不要开放全部开放0.0.0.0,以防**。

 

配置完成后需要启动tomcat/usr/local/tomcat/bin/startup.sh

此时,我们可以进行测试web服务器的tomcatmanager界面,http://IP:8080/manager/index.html

填写配置文件内的用户名:admin,密码:kaliarch

 

三、创建发布项目

发布java,需要安装两个插件,Maven Integration plugin 和 Deploy to container Plugin,若没有安装则需要安装这两个插件 安装完插件后,需要重启jenkins。

3.1 新建item

输入项目名称,选择构建一个maven项目,确定。

 

3.2 配置源码管理

源码管理选择git,填入仓库url

 

此时发现会出现报错信息,因为此仓库为我的私有仓库,需要配置Credentials,点开add, Add Credentials的 Kind选择SSH Username with private key,Username选择之前在github上传的公钥用户的用户名,此次为root,Private Key为jenkins服务器登录github的本地私钥,查看私钥cat /root/.ssh/id_rsa 复制粘贴到Key区域,完成添加。此时可以发现报错已经消失。

 

3.3 配置发布到web服务器

添加增加构建后操作,选择Deploy war/ear to a container,WAR/EAR files填写**/*.war,Containers选择增加容器,增加tomcat 8.x,Credentials点add,此处填写的为tomcat的manager页面的用户名密码,此处为admin/kaliarch,

 

tomcat url填写web服务器的tomcaturl,

 

3.4 配置邮件信息通知

添加增加构建后操作,选择Editable Email Notification,利用插件邮件来发送通知。

可以根据需求自定义邮件主题与内容,此处添加信息接受人,由于全局配置了always,在高级设置内,填写接受人邮箱。

 

3.5 信息查看

点击保存,并立即构建,可以查看日志信息。

 

登录web服务器,查看war包已经发布完成。

 

打开web页面进行测试。

 

 

查看邮件通知。

 

至此,java程序已经完成发布,之后修改代码后可以提交到github,然后通过jenkins自动发布即可。

欢迎工作一到五年的Java工程师朋友们加入Java架构师:697558955

群内提供免费的Java架构学习资料(里面有高可用、高并发、高性能及分布式、Jvm性能调优、Spring源码,MyBatis,Netty,Redis,Kafka,Mysql,Zookeeper,Tomcat,Docker,Dubbo,Nginx等多个知识点的架构资料)合理利用自己每一分每一秒的时间来学习提升自己,不要再用"没有时间“来掩饰自己思想上的懒惰!趁年轻,使劲拼,给未来的自己一个交代!

配置oem 13c以监控管理数据库 使用oem13c监控数据库 阅读详情

相关推荐

单细胞测序数据读取实战指南:从入门到精通

本文提供了单细胞测序数据读取的实战指南,涵盖从标准10X Genomics格式到通用表达矩阵及RDS文件的读取方法。文章重点解析了数据读取的核心步骤、常见问题解决方案及进阶技巧,旨在帮助用户夯实数据分析基础,确保后续分析流程的准确性。

weixin_29095587的博客 460

5.Jenkins自动发布项目

由于我们是在做测试,所以域名用的是假的,一定要在Jenkins服务器上做劫持,不然Jenkins不知道gitlab.test.com是谁。(凭证)填写的是Jenkins服务器的root用户的私钥,因为我更改了启动Jenkins的用户为root。接下来就该发布项目了,发布前,先准备好对应的环境。添加Jenkins的公钥到gitlab上,添加到对项目有权限的用户下。这里一定要注意,高版本jenkins的配置文件,不是以前的。,更改它是不起作用的,高版本Jenkins的配置文件为。集群中的每台机器的配置都一样。

JCWang的博客 978

车载以太网测试技术解析

在智能汽车与HiL测试领域,高效解析与模拟车载网络通信是开发验证的关键。ZD-Converter 2000以媒体/介质转换器、嗅探器、拦截器、仿真器四合一的颠覆性设计,成为工程师应对复杂车载以太网测试的瑞士军刀。它支持双路车载/标准以太网智能转换、实时通信嗅探、硬件级数据拦截及ECU通信模拟,更通过串口命令实现全参数远程配置,赋能自动化测试流程。本文将深度解析其核心功能与实战应用场景。

Triv2025的博客 1143

Jenkins自动化发布

jenkins自动化发布详细过程(细)

优快云javahome的博客 1939

小曾WRF自学日记(3)渐入佳境 ——WRF实例-数据下载与WPS前处理

ww

weixin_46297571的博客 1480

(超详细)Scala环境搭建(scala-2.12.15、IDEA2021.1.3)

Scala环境搭建(scala-2.12.15、IDEA2021.1.3) JunLeon——go big or go home 目录 Scala环境搭建(scala-2.12.15、IDEA2021.1.3) 一、Scala概述 1、什么是Scala? 2、Scala发展史 3、Scala与Java的关系 二、Scala环境搭建 1、环境准备 2、Scala安装与配置环境变量 3、验证Scala 三、编写第一个Scala程序 1、使用IDEA创建maven工程 2、.

JunLeon的博客 3万+

jenkins配置CICD自动发布代码;build后自动打tag(github发布demo)

先安装jenkins 运行环境ubuntu 搭建jenkins 安装jdk 安装jdk Linux服务器安装并配置git // 安装git [root@localhost ~] yum install git // 查看git的版本 [root@localhost ~]# git version git version 1.7.1 // 配置git的用户名 [root@localhost ~]# git config --global user.name "CodeTiger" // 配置git的邮箱 [r

奔跑的菜鸡 2125

4D毫米波雷达

详解4D成像毫米波雷达

sangba2019的博客 2393

小伙伴想学Jenkins自动构建发布项目,我:安排上了!!

由于篇幅限制,小编在此截出几张知识讲解的图解《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取![外链图片转存中…(img-mfMhlqIu-1712913447647)][外链图片转存中…(img-iB8Pgrvb-1712913447647)][外链图片转存中…(img-tpxHJ9rQ-1712913447647)][外链图片转存中…(img-td90n9os-1712913447647)]

2401_84048521的博客 486

一文吃透 SAP HANA SDA:把分散数据当作本地数据来用的那把钥匙

摘要:SAP HANA SDA(Smart Data Access)技术详解:150字精要 SAP HANA SDA是一种数据虚拟化技术,允许在不复制数据的情况下访问远端数据源。核心功能包括: 通过Remote Source定义连接配置 创建Virtual Table作为本地代理 支持谓词下推优化查询性能 与SDI技术协同工作扩展数据集成能力 典型应用场景包括: 跨系统联邦查询 冷热数据分层管理 混合云数据整合 远程表复制(RTR)实现近实时数据同步 实施要点: 需关注适配器能力差异 合理运用查询下推优化

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 323

基于SVD矩阵分解的用户购物篮预测分析实战

基于SVD矩阵分解的用户购物篮预测分析实战

360

jenkins中发布java项目

jenkins发布java项目

taonihou_的博客 647

执行任务赚积分

接下来N行,每行两个空格分隔的整数(SLA和V),SLA表示任务的最晚处理时间,V表 示任务对应的积分。每个任务都有最晚处理时间限制和积分值,在最晚处理时间点之前处理完成任务才可获得对应的积分奖励。现有N个任务需要处理,同一时间只能处理一个任务,处理每个任务所需要的时间固定为1。可用于处理任务的时间有限,请问在有限的时间内,可获得的最多积分。第2个时间单位内,处理任务4,获得5个积分。输入描述:第一行为一个数N,表示有N个任务,1

面试高手的博客 4694

Jenkins自动部署发布Java代码

一、需求: Jenkins大多数情况下都是用来部署Java项目,上一篇博客已经写了自动打包Java项目,但在现实应用中,Jenkins很强大的,可以做到自动打包发布Java项目。这篇文章,将引导大家完成完整的Java项目(自动发布代码功能)! 二、实验环境 主机名 操作系统 IP地址 软件包 Jenkins centos 7 192.168.64.70 Jdk、maven、tomcat Tomcat centos 7 192.16...

weixin_45131345的博客 917

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

java代码发布工具_jenkins自动发布java代码

继jenkins笔记(1)进行实战java代码发布,此利用github私有仓库拉去,jenkins利用maven编译源码后讲包发布致web服务器。一、git私有仓库创建可参考GIT笔记中远程仓库搭建部分,此处java源码使用zrlog,将源码pull到github上,将jenkins公钥配置到github上,即可下一波。二、web服务器tomcat配置在需要将代码发布的web服务器上需要配置tom...

weixin_30663789的博客 1221

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Jenkins自动部署发布Java代码(完整教程)

一、需求 Jenkins大多数情况下都是用来部署Java项目,上一篇博客已经写了自动打包Java项目,但在现实应用中,Jenkins很强大的,可以做到自动打包发布Java项目。这篇文章,将引导大家完成完整的Java项目(自动发布代码功能)! 二、实验环境 三、实验步骤 1.搭建tomcat 服务(在192.168.22.129服务器上) (1)先安装jdk1.8 jdk和tomcat ...

weixin_34242658的博客 2220

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

java自动化发布_java实现自动化发布平台核心代码

1.搭建jenkins环境(1)jenkins官网下载jenkins.war包(2)将该war包放入到tomcat的webapp的目录下(前提条件需要配置tomcat的环境,详情请自行百度)(3)启动tomcat(在tomcat的bin目录下执行"./start.sh")脚本,等待tomcat启动成功(4)访问jenkins地址如:http://ip:端口/即可访问 如下图:后续配置就不说了,有兴...

weixin_30306507的博客 583

基于Jenkins CICD的代码发布与回滚 Jenkins+Git+Docker 发布 Java 项目 Jenkins+Git+Ansible 发布PHP 项目

此时,可以重新创建一个”自由软件项目风格任务“,通过参数化构建特定版本,也就是指定上一个正常版本镜像,然后重新执行创建容器命令即可回到之前正常的版本。根据不同的Linux发行版可能略有不同,请根据实际情况进行查找。开发者将开发完成的代码提交到 Git 代码版本仓库后,点击 Jenkins 任务按钮自动拉取代码编译构建,并自动部署到 Web 服务器,用户可访问最新项目版本。Git 是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理, 是目前企业中使用最为广泛的代码版本管理系统。

时间的博客 2449
上一篇: 阿里面试题BIO和NIO数量问题附答案和代码 java爱好者
下一篇: java还是C?
普通网友
博客等级 码龄8年 15粉丝 56原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值