摘要:之前發(fā)布代碼需要每次本地打包發(fā)到服務(wù)器重啟等一系列操作,服務(wù)器多了會很繁瑣,使用可以自動部署和統(tǒng)一管理,解放人力,擠出很多喝茶時(shí)間。首頁點(diǎn)擊制定項(xiàng)目下三角,點(diǎn)擊立即構(gòu)建即可。
之前發(fā)布代碼需要每次本地打包-->發(fā)到服務(wù)器-->重啟tomcat等一系列操作,服務(wù)器多了會很繁瑣,使用jenkins可以自動部署和統(tǒng)一管理,解放人力,擠出很多喝茶時(shí)間。
1、下載jenkins.war
官網(wǎng)地址 http://jenkins-ci.org/
下載最新版本
http://mirrors.jenkins-ci.org...
2、把下載的war包放到到服務(wù)器tomcat的webapps目錄下,啟動tomcat
3、啟動成功后log會打印一個(gè)UUID密碼,復(fù)制,登陸時(shí)用
4、輸入tomact地址,進(jìn)入jenkins首頁,會提示自動安裝需要的插件(如果不能在線安裝,需要去自己下載之后上傳
插件下載地址 http://updates.jenkins-ci.org...
5、創(chuàng)建項(xiàng)目.
首頁點(diǎn)擊新建item
創(chuàng)建一個(gè)自由風(fēng)格項(xiàng)目,自定義一個(gè)名稱projectName,確認(rèn)
6、配置svn,點(diǎn)擊add 添加自己的svn賬戶
7、配置觸發(fā)器(指定時(shí)間自動部署)
不需要自動觸發(fā)的同學(xué)可略過此步驟,之后手動點(diǎn)擊`立即構(gòu)建`按鈕即可 05 10 * * * 為cron表達(dá)式,表示每天上午10:05
8、設(shè)置execute shell(部署時(shí)執(zhí)行的腳本)
這里用java項(xiàng)目舉例
BUILD_ID=DONTKILLME # ProjectName是剛才**第5步**中填入的名稱,jenkins默認(rèn)工作空間為/root/.jenkins/workspace cd /root/.jenkins/workspace/projectName/ # 將代碼打包 mvn package # 將打包后的代碼移到服務(wù)器的tomcat目錄下,這里我自己寫了一個(gè)deploy.sh去處理copy-解壓-備份-重啟tomcat等一系列操作 cd /root/.jenkins/workspace/projectName/target mv projectName.war /home/shibo && deploy.sh
以上shell腳本只是舉例,具體可根據(jù)自己需求更改,比如vue的話就將mvn package改為npm run build......
到這就可以保存了,然后測試一下是否可以正常使用。首頁點(diǎn)擊制定項(xiàng)目下三角,點(diǎn)擊立即構(gòu)建即可。
下面是我在搭建的時(shí)候遇到的一些問題,僅供參考:
1、第一次登錄后下線,第二次不能用user賬戶登陸
解決方法:去/root/.jenkins/secrets下找到initialAdminPassword ,復(fù)制密碼,用admin登陸
2、maven分布式子項(xiàng)目沒有web.xml,導(dǎo)致mvn打包報(bào)錯(cuò)
解決方法:在pom.xml中添加
false
3、execute shell中執(zhí)行deploy.sh腳本時(shí),有用到shutdown.sh和startup.sh兩個(gè)命令,
發(fā)現(xiàn)tomcat關(guān)閉后,startup不能自動啟動
原因是execute會自動kill掉tomcat
解決方法:在execute shell第一行添加BUILD_ID=DONTKILLME
4、execute shell時(shí),有時(shí)有一些不是很重要的腳本命令出錯(cuò),我們需要忽略他們,繼續(xù)執(zhí)行,
需要點(diǎn)開 高級-->設(shè)置Exit code to set build unstable = 1
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/71656.html
摘要:上午折騰了一下持續(xù)集成,由于公司使用自己搭建的服務(wù)器來進(jìn)行代碼管理,因此這里是針對服務(wù)器來進(jìn)行的配置,后面稍微介紹了下針對管理的項(xiàng)目的配置之前項(xiàng)目每次修改之后都需要本地一次手動發(fā)布到服務(wù)器上方便測試和產(chǎn)品查看,有了持續(xù)集成之后只要或者提交之 上午折騰了一下Jenkins持續(xù)集成,由于公司使用自己搭建的svn服務(wù)器來進(jìn)行代碼管理,因此這里Jenkins是針對svn服務(wù)器來進(jìn)行的配置,后面...
摘要:由于拉取有文件會自動拉取。那么需要在后臺關(guān)閉這個(gè)選項(xiàng)中文插件保持賬戶擁有者和發(fā)送郵件一致 目的 對于小組內(nèi)部PHP代碼進(jìn)行定期檢測及分發(fā) 1. 需要定期從svn 或者git拉取指定代碼 2. 對代碼庫內(nèi)部門模塊進(jìn)行隔離或者刪除,不參與檢測 3. 為小組內(nèi)人員定期發(fā)送郵件, 4. 可分配具體bug 給具體小組內(nèi)人員 jenkins安裝及安裝插件 1. sonar搭建可以參考 [之前文章...
摘要:持續(xù)集成,持續(xù)交付當(dāng)然也有叫通常會采用一些軟件如等來輔助我們。這時(shí)可以通過倉庫自帶的來觸發(fā)。這里的最好是可以支持,關(guān)于,大家可以理解為類似的功能。關(guān)于如何取出服務(wù)地址并自動添加記錄的原理,可以參考我之前的一篇文章文中第三部分有詳細(xì)描述。 CI(Continuous Integration)持續(xù)集成,CD(Continuous Delivery) 持續(xù)交付(當(dāng)然也有叫 Continuou...
摘要:在本教程中,我們將使用在上部署和伸縮。它主要用來幫助操作人員部署伸縮更新和維護(hù)服務(wù),以及提供服務(wù)發(fā)現(xiàn)機(jī)制來管理節(jié)點(diǎn)集群上的容器化應(yīng)用程序。代理則使用,網(wǎng)絡(luò)啟動協(xié)議啟動,因此容器能夠在啟動和運(yùn)行之后自動連接到。賬戶我們將在上部署集群。 在本教程中,我們將使用Rancher在Kubernetes上部署和伸縮Jenkins。按照本文的步驟一步步來,你將會使用到我們用來測試實(shí)際構(gòu)建作業(yè)的mas...
閱讀 2502·2023-04-25 22:09
閱讀 1018·2021-11-17 17:01
閱讀 1535·2021-09-04 16:45
閱讀 2615·2021-08-03 14:02
閱讀 811·2019-08-29 17:11
閱讀 3249·2019-08-29 12:23
閱讀 1081·2019-08-29 11:10
閱讀 3277·2019-08-26 13:48