Jenkins+maven+gitlab+tomcat自動化編譯部署(windows7版)

1、環境

首先盜用網上的一張圖html

2、環境搭建

一、gitlab安裝

網上博客把地址粘出來:http://www.cnblogs.com/lidong94/p/7161717.htmljava

二、jenkins安裝

 

1)安裝jdk,建議使用1.8以上的版本,安裝好jdk以後配置環境變量git

JAVA_HOME=「你安裝jdk的目錄」web

Path=$path;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;apache

(2)安裝jenkinswindows

能夠下載war包,直接 在命令行 java -jar jenkins.war(這種方式須要jdk版本匹配)tomcat

也能夠安裝版,上jenkins官網,下載windows版(x86和64位根據本身的機器選擇正確的)服務器

jenkins.msiapp

3、jenkins配置

安裝成功後,啓動http://localhost:8080webapp

初始的管理員密碼,jenkins自動生成的,根據上面紅色的路徑找到密碼,拷到下面的輸入框中。

選擇默認安裝插件

 

 

建立用戶

 

進入jenkins的主頁 

 

接下來配置jenkins全局變量(jdk,git,maven,tomcat等等)

"系統管理"---->"Global Tool Configuration" 配置 jdk 、mavengit等信息

jdk配置別名隨便寫,java_home就是jdk的家目錄,不知道的話可使用java -version

 

Git安裝

 若是沒有安裝git,請安裝,安裝步驟(windows版)網址:https://www.cnblogs.com/wj-1314/p/7993819.html

 

Maven安裝

若是maven沒有安裝,到maven官網下載,直接解壓就行了,而後設置環境變量(同java環境變量設置)

 

 

以上這些配置全都在global tool configuration裏邊,配置完點擊保存

4、Jenkins安裝插件

 

 

須要安裝的插件

Gitlab、gitlabHook、Deploy to container、maven

 

 

安裝完成後選擇紅色箭頭指向複選框

5、新建job

接下來咱們新建一個job,由於只有先建了job才能和gitlab連通,以下圖,這裏填寫一個名字如test,選擇構建一個自由風格的軟件項目,點擊

點擊完以後以下圖,描述這塊記得寫上,

而後點擊源碼管理以下圖,咱們選擇git,repository url  寫gitlab倉庫的地址,credentials是指信任,須要填寫你登陸gitlab的用戶名/密碼

點擊觸發器選項卡以後以下圖,咱們點擊Build when a change is pushed to GitLab. GitLab CI Service URL: http://192.168.4.117:8080/project/test,記住這個url地址,待會咱們須要在gitlab上配置  ,而後點擊構建選項卡   構建環境暫不配置,

點擊構建選項卡以後以下圖:maven version處選擇咱們在global tool configuration處配置的maven名稱  goals處填寫maven命令,由於咱們要打包,因此填寫clean package,不懂的能夠去學一下maven命令,pom選擇pom.xml的相對於你建立的job的相對路徑(咱們是jenkins家目錄\workspace\test\)

而後點擊構建後操做選項卡

點擊構建後選項卡以後以下圖,

首先編輯tomcat服務器 tomcat_users.xml,在下面添加以下內容:

 <role rolename="tomcat"/>

 <user username="autoDeployer" password="yggc0302" roles="tomcat,manager-gui,manager-script,manager-status"/>

訪問tomcat urlhttp://192.168.1.106:8080/  點擊manager webapp提示登陸 輸入autoDepolyer/yggc0302

若是返回403咱們打開/webapps/manager/META-INF/目錄下context.xml文件,不是conf/目錄下的context.xml文件,必定不要搞錯了

咱們將裏面的內容註釋掉或者修改

 

<Valve className="org.apache.catalina.valves.RemoteAddrValve"

 

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />

咱們將裏面的內容註釋掉或者修改

<Valve className="org.apache.catalina.valves.RemoteAddrValve"

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|\d+\.\d+\.\d+\.\d+" />

保存,而後重啓tomcat,從新訪問manager app頁面,OK,問題獲得解決。

 而後點擊保存就能夠了這樣咱們就建完了一個job,有的人可能會想起來還沒配置gitlab,good,還記得建job的時候要記住的那個url地址嗎,接下來咱們須要在gitlab中找到web hooks這個選項,不一樣的gitlab   web hooks在不一樣的地方  ,個人是在下圖點擊右上角紅色部分

點擊integrations後以下圖,須要把jenkins的url:http://x.x.x.x:8080/project/test填到此處,而後點擊添加web hooks,這個web hooks的做用就是jenkins檢測到gitlab有代碼提交就會觸發jenkins進行構建

添加後點擊test,測試連通性,返回200ok

 

 

 

若是返回403以下解決方案:

gitlab web hook 測試403解決方案

1.安裝插件 gitlabgitlab hook

2.系統管理-->config global security --> 去掉 防止跨站點請求僞造(可能)

3.系統管理-->系統設置-->去掉 Enable authentication for '/project' end-point

 

到此,jenkins自動打包,上傳就配置完成了,接下來咱們驗證一下,我提交代碼到gitlab一下,控制檯輸出以下,

 

咱們到測試服務器的webapps下驗證以下,jar包已經傳到tomcat下

相關文章
相關標籤/搜索