共计 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" />
修改完毕如上图,添加 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 自动发布即可。
局域网内利用 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 的下载地址:请点这里