摘要:最后回到目錄把文件刪除。先從工作空間取出包到的存放目錄,我這里配置的是,同時做一個備份。
git插件安裝
進入菜單"jenkins>系統管理>管理插件>可選插件",在右側搜索欄輸入"Git Plugin",也可以搜索安裝"GitHub plugin"或"SVN Publisher plugin"
但事實上我下載安裝時一直報錯
java.io.IOException: Could not find JSON in http://updates.jenkins-ci.org/update-center.json?id=default&version=2.16
折騰很久未能解決,最后自已到http://mirror.xmission.com/je...下載需要的插件。參考jenkins wiki:https://wiki.jenkins-ci.org/d...。
下載到hpi文件到jenkins主目錄下的plugins,同時要下載依賴插件,例如git plugin依賴bouncycastle-api和git client(在控制臺安裝失敗時,可以看到要安裝的依賴插件),才能安裝成功。
$ cd /var/lib/jenkins/plugins $ wget http://mirror.xmission.com/jenkins/plugins/git/latest/git.hpi
然后重啟jenkins,登錄jenkins,進入“jenkins>系統管理>管理插件>已安裝”,可以看到Git plugin已成功安裝。再重新進test-build-job配置,源碼管理已經出來git。最后回到plugins目錄把.hpi文件刪除。
接下來將jenkins master的公鑰添加到git服務器上,公鑰在/var/lib/jenkins/.ssh/id_rsa.pub,生成公鑰可參考Jenkins slave節點機器配置
創建連接git的credentials,創建請參考Jenkins控制臺slave配置
maven安裝配置接下來安裝maven
$ cd /usr/local $ wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gz
解壓
$ tar -zvxf apache-maven-3.3.9-bin.tar.gz
進入菜單“jenkins>新建”
配置jdk和maven settings.xml路徑
創建一個在java master上用maven打包項目的job進入菜單“jenkins>新建>構建一個自由風格的軟件項目”
進入配置,根據情況配置歷史構建保存的天數和個數,指定jdk以及執行該job的機器,這里指定了master
git配置,填寫git項目地址和上一節提到的credentials,我要部置的項目分支是master
maven配置,以及maven構建完成后,執行腳本將war包放到目錄/var/lib/jenkins/userContent,插件Copy To Slave Plugin會從該目錄下載war包到slave
腳本還包含一個備份功能,將userContent下的war包名稱添加日期后綴進行重命名,同時檢查war包個數,超過10個時刪除最舊的那個
最后在構建完成后,配置要觸發的另一個job,這個job用來下載master機器的war包到和個slave節點,并執行tomcat重啟。同時指定構建失敗后要發送郵件的郵箱,以空格隔開
第一個job完成
創建下載war包到slave節點并完成tomcat重啟的job進入菜單“jenkins>新建”,選擇構建一個多配置項目
進入配置,general和上一個job類似
配置需要部署的slave節點
指定下載war包的目錄,這塊需要先安裝插件copy-to-slave
下載完成后,執行發布腳本。先從工作空間取出war包到tomcat的war存放目錄,我這里配置的是/www/web,同時做一個備份。然后先關閉tomcat,保證殺死tomcat進程,然后刪除tomcat root目錄,再啟動tomcat
最后同樣可以配置job執行失敗的郵件通知
郵件通知配置需要先安裝插件Email Extension Plugin,進入菜單“jenkins>系統管理>系統設置>郵件通知>高級”,設置用于發送郵件的郵箱和密碼
整過部置過程結束
注意點部署過程涉及到的文件和程序都應該為jenkins用戶所擁有或者有相關權限,不然會報權限錯誤;
slave 80端口只能由root占用,所以這里tomcat用8080啟動,然后在root安裝nginx,將請求轉發到8080,后續有時間再寫寫相關實踐。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/76395.html
摘要:什么是可以簡單地理解為可以代替你實現自動從拉取代碼,打包,部署到遠程服務器的工具。隨后登錄后發現頁面空白,沒找到具體原因,重啟下容器后再登錄就好了。主要是配置訪問服務器拉取代碼,還有配置遠程服務器地址,目的是為了打包后上傳文件到遠程服務器。 showImg(https://segmentfault.com/img/remote/1460000017907307?w=495&h=300)...
摘要:從開始搭建自動部署環境續前言上一篇從開始搭建自動部署環境雖然環境搭建起來了,但是配置少了一部分步驟。創建本地倉庫參考新建項目項目是我寫的一個用來測試環境的項目,代碼托管在上。 從0開始搭建自動部署環境(續) 前言 上一篇從0開始搭建自動部署環境雖然環境搭建起來了,但是配置少了一部分步驟。本來應該寫到上一篇中,但是這樣做篇幅過長了。另外,此篇會使用自動部署一個同步在Github上的Spr...
摘要:從開始搭建自動部署環境續前言上一篇從開始搭建自動部署環境雖然環境搭建起來了,但是配置少了一部分步驟。創建本地倉庫參考新建項目項目是我寫的一個用來測試環境的項目,代碼托管在上。 從0開始搭建自動部署環境(續) 前言 上一篇從0開始搭建自動部署環境雖然環境搭建起來了,但是配置少了一部分步驟。本來應該寫到上一篇中,但是這樣做篇幅過長了。另外,此篇會使用自動部署一個同步在Github上的Spr...
閱讀 2772·2021-10-14 09:42
閱讀 827·2021-10-11 10:57
閱讀 773·2019-08-30 15:54
閱讀 1914·2019-08-30 13:50
閱讀 1686·2019-08-30 11:19
閱讀 932·2019-08-29 12:38
閱讀 1425·2019-08-26 11:51
閱讀 1388·2019-08-26 10:48