??前言
以前,我們部署程序的步驟:發(fā)更新通告,遠(yuǎn)程登錄到服務(wù)器,暫停程序,備份程序,刪除舊的程序包,上傳新的程序包到程序目錄,重啟服務(wù)。發(fā)通告。
但是,隨著互聯(lián)網(wǎng)程序的普及,雖然我也不知道什么是互聯(lián)網(wǎng)程序。
我們追求程序的快速迭代,無感知更新。之前重復(fù)的步驟會(huì)成為噩夢,而且人工操作難免會(huì)出錯(cuò),我之前就干過意見蠢事,本地打測試環(huán)境的包,然后扔到線上了,都是眼淚啊。
所以,是時(shí)候來一套自動(dòng)化部署工具,來方便我們的程序生活了。
本筆記,默認(rèn)你已經(jīng)安裝好了需要的環(huán)境,如果沒有,請(qǐng)移步http://www.itdecent.cn/p/218d008f0fda
服務(wù)器環(huán)境
java version "1.8.0_131"
Apache Maven 3.3.9
git version 1.8.3.1
Jenkins ver. 2.73
??Jenkins初見

這個(gè)筆記的重點(diǎn)就是這個(gè)貨:Jenkins
Jenkins是一個(gè)開源軟件項(xiàng)目,是基于Java開發(fā)的一種持續(xù)集成工具,用于監(jiān)控持續(xù)重復(fù)的工作,旨在提供一個(gè)開放易用的軟件平臺(tái),使軟件的持續(xù)集成變成可能。
安裝必要的插件
Publish Over SSH
Email Extension Plugin
。。。
??開始配置
??假定你安裝了必要的插件,在開始新建一個(gè)Job之前,需要進(jìn)行一些基礎(chǔ)的配置:
- 打開Jenkins,系統(tǒng)管理->Global Tool Configuration中進(jìn)行基礎(chǔ)的配置,其中包括JDK、Maven、Git,根據(jù)你服務(wù)器實(shí)際安裝目錄設(shè)置這幾個(gè)必要的插件。
- 當(dāng)然如果你的系統(tǒng)對(duì)權(quán)限要求比較高,還需要進(jìn)行權(quán)限方面的配置,這里不多做介紹,因?yàn)椤?。。。我不?huì)。
??完成基礎(chǔ)的配置,下一步,我們就要新建一個(gè)Job了,這個(gè)Job就是我們要自動(dòng)構(gòu)建的一個(gè)單元。

點(diǎn)擊“OK”按鈕,就會(huì)進(jìn)入到詳細(xì)設(shè)置的界面。

這里最好勾選和設(shè)置一下“丟棄舊的構(gòu)建”,因?yàn)镴enkins每次構(gòu)建默認(rèn)都會(huì)保存,如果你構(gòu)建比較頻繁,而且服務(wù)器的硬盤空間比較小的話,可能會(huì)造成空間不足。

因?yàn)槲覀兊脑创a是通過git管理的,所以接下來需要設(shè)置git。
sudo su - jenkins
# 如果是通過yum安裝的Jenkins,可能默認(rèn)Jenkins用戶沒有shell,所以需要以下命令
sudo usermod -s /bin/bash jenkins
或者
sudo su -s /bin/bash jenkins
再次切換root用戶到j(luò)enkins用戶后,發(fā)現(xiàn)類似bash-4.2$,可以把/etc/skel/目錄下的文件復(fù)制到j(luò)enkins用戶的家目錄,就是/etc/passwd文件中配置的路徑
cp -r /etc/skel/. /var/lib/jenkins
ssh-keygen -t rsa // 一路回車,生成 ssh key, 復(fù)制 xxx.pub 公鑰到 git 服務(wù)器上即可.
未完待續(xù)。。。
