爲什麼選擇github?
svn有中央服務器,若服務器掛了,整個公司都不能用svn了
github去中心化、分佈式服務器,某一臺掛了不會影響使用;
linux啓動jenkins服務: java -jar jenkins.war
如何實現項目字典部署?
1、Jenkins新建任務
(maven項目構建工具編譯打包代碼)–源碼管理選Git(repository URL填 倉庫的路徑clone or download裏的路徑複製、Credentials填git帳號和密碼、Branch填*/master)–構建環境Build 填pom.xml是maven項目的核心配置文件(也是基於工作區間)、install----保存
在jenkins主面板,點任務後面的構建按鈕,則開始構建,在控制檯輸出裏看詳細信息;
項目構建在linux服務器 工作區間裏(控制檯第二行),編譯出有個war包;
2、把war包拷貝到tomcat的webapps, 並且能夠實現服務的部署;
步驟:構建後部署到遠程服務器的配置(系統配置)
系統管理–系統設置–publish over shh (如果沒有,則需要下載插件publish over ssh)
1、passphrase:遠程虛擬機的登錄密碼
2、SSH Servers:
ssh server name:隨便填(標識作用)
hostname:遠程虛擬機ip
username:登錄虛擬機的用戶名
remote directory:發佈時,文件能夠拷貝到的目錄 /usr/local/tomcat/webapps
Test connection:如果成功則說明配置沒有問題 Success
apply 然後保存
備註:系統設置是全局的,會影響到全部任務,如果要單獨配置某個任務,則右鍵
選擇項目–配置–post steps
1 選擇send files or execute commands over ssh
name:默認選中全局設置中的ssh服務器
transfer set source files:war包的路徑 : target/編譯出的war包路徑,基於工作區間(jenkins任務裏面–工作區間)
remove prefix:移除前綴,獲得包名 target/
remote directory:不寫,以系統設置爲準
exec command:執行指定路徑下的shell命令文件
(cd 到tomcat的bin路徑下 、 ./startup.sh 也可以添加項目啓動的shell腳本)
-----應用–保存
在提交代碼時自動編譯打包部署,即時把開發的新功能部署到測試環境;
1、在jenkins裏面修改job的配置—構建觸發器,勾選 當有變動提交到github時自動build;
bulid when a change is pushed to GitHub;
2、在github上,在項目首頁,點擊setting
在Webhook & Services 中 webhooks 填寫: jenkins的URL/github-webhook
application/json:選擇application/x-www-form-urlencoded
Just the push event
Active----Update webhook