繼jenkins筆記(1)進行實戰java代碼發佈,此利用github私有倉庫拉去,jenkins利用maven編譯源碼後講包發佈致web服務器。html
可參考GIT筆記中遠程倉庫搭建部分,此處java源碼使用zrlog,將源碼pull到github上,將jenkins公鑰配置到github上,便可下一波。java
在須要將代碼發佈的web服務器上須要配置tomcat的manager頁面。git
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 添加如下內容。github
<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,以防**。web
配置完成後須要啓動tomcat/usr/local/tomcat/bin/startup.sh
此時,咱們能夠進行測試web服務器的tomcatmanager界面,http://IP:8080/manager/index.html
填寫配置文件內的用戶名:admin,密碼:kaliarch
apache
發佈java,須要安裝兩個插件,Maven Integration plugin 和 Deploy to container Plugin,若沒有安裝則須要安裝這兩個插件 安裝完插件後,須要重啓jenkins。tomcat
輸入項目名稱,選擇構建一個maven項目,肯定。
服務器
源碼管理選擇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區域,完成添加。此時能夠發現報錯已經消失。
app
添加增長構建後操做,選擇Deploy war/ear to a container,WAR/EAR files填寫**/*.war
,Containers選擇增長容器,增長tomcat 8.x,Credentials點add,此處填寫的爲tomcat的manager頁面的用戶名密碼,此處爲admin/kaliarch,
tomcat url填寫web服務器的tomcaturl,
ssh
添加增長構建後操做,選擇Editable Email Notification,利用插件郵件來發送通知。
能夠根據需求自定義郵件主題與內容,此處添加信息接受人,因爲全局配置了always,在高級設置內,填寫接受人郵箱。
點擊保存,並當即構建,能夠查看日誌信息。
登陸web服務器,查看war包已經發布完成。
打開web頁面進行測試。
查看郵件通知。
至此,java程序已經完成發佈,以後修改代碼後能夠提交到github,而後經過jenkins自動發佈便可。