1. 程式人生 > >jenkins自動發布java代碼

jenkins自動發布java代碼

mage 調優 html ner 高級設置 arch ava eba 輸入

進行實戰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區域,完成添加。此時可以發現報錯已經消失。

技術分享圖片

添加增加構建後操作,選擇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等多個知識點的架構資料)合理利用自己每一分每一秒的時間來學習提升自己,不要再用"沒有時間“來掩飾自己思想上的懶惰!趁年輕,使勁拼,給未來的自己一個交代!

jenkins自動發布java代碼