阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Jenkins自动发布Java代码

163次阅读
没有评论

共计 2721 个字符,预计需要花费 7 分钟才能阅读完成。

继 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" />

Jenkins 自动发布 Java 代码

修改完毕如上图,添加 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,以防黑客入侵。

Jenkins 自动发布 Java 代码
配置完成后需要启动 tomcat/usr/local/tomcat/bin/startup.sh
此时,我们可以进行测试 web 服务器的 tomcatmanager 界面,http://IP:8080/manager/index.html
填写配置文件内的用户名:admin,密码:kaliarch
Jenkins 自动发布 Java 代码

三、创建发布项目

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

3.1 新建 item

输入项目名称,选择构建一个 maven 项目,确定。
Jenkins 自动发布 Java 代码

3.2 配置源码管理

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

3.3 配置发布到 web 服务器

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

3.4 配置邮件信息通知

添加 增加构建后操作 ,选择 Editable Email Notification,利用插件邮件来发送通知。
可以根据需求自定义邮件主题与内容,此处添加信息接受人,由于全局配置了 always,在高级设置内,填写接受人邮箱。
Jenkins 自动发布 Java 代码

3.5 信息查看

点击保存,并立即构建,可以查看日志信息。
Jenkins 自动发布 Java 代码

登录 web 服务器,查看 war 包已经发布完成。
Jenkins 自动发布 Java 代码
打开 web 页面进行测试。
Jenkins 自动发布 Java 代码

查看邮件通知。
Jenkins 自动发布 Java 代码

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

局域网内利用 GitLab+Jenkins 自动生成 GitBook 并发布(Nginx)  http://www.linuxidc.com/Linux/2016-05/131136.htm

Linux+Git+Maven+Jenkins+Neuxs 自动化编译环境搭建 http://www.linuxidc.com/Linux/2016-02/128652.htm

CentOS6 安装 Jenkins  http://www.linuxidc.com/Linux/2016-05/131365.htm

Jenkins 服务器搭建指南 - 官方文档翻译整理  http://www.linuxidc.com/Linux/2017-10/147281.htm

使用 Jenkins 配置 Git+Maven 的自动化构建 http://www.linuxidc.com/Linux/2016-02/128641.htm

Jenkins+Maven+Git 搭建持续集成和自动化部署的配置手记 http://www.linuxidc.com/Linux/2015-06/118606.htm

Jenkins 的分布式构建及部署——节点  http://www.linuxidc.com/Linux/2015-05/116903.htm

使用 Jenkins 自动部署发布  http://www.linuxidc.com/Linux/2017-04/143257.htm

Jenkins 的详细介绍:请点这里
Jenkins 的下载地址:请点这里

 

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计2721字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中