最近在使用公司的jenkins進行自動部署項目,因爲以前沒有用過,一直半生不熟,所以特地寫個隨機記錄。java
1.登陸jenkins服務spring
jenkins安裝好後,咱們經過瀏覽器訪問它的主頁(以下),輸入用戶名和密碼進行登陸。shell
2.創建新的項目瀏覽器
因爲這是公司的服務器,所以上面以前已經安裝好了幾個其餘的項目,此次我是須要創建一個新的項目,所以點擊箭頭所指的「New Item」tomcat
3.輸入項目名稱,並選擇項目類型。服務器
我這裏爲了方便自由配置,選擇了第一個「Freestyle project」curl
4.配置相關內容maven
#每次項目更新,構建時候拋棄以前舊的構建,最大記錄數設置爲20.測試
#配置使用的JDK,有時候服務器上有多個版本JDK,最好是咱們本身指定版本,以防出現版本錯誤的狀況。url
#配置版本控制器,因爲我使用的是SVN,所以這裏配置的是項目的SVN地址,下方Credentials是驗證信息
#配置完版本控制後,在下方選擇「Always check out a fresh copy」,以保證每次構建項目都是最新代碼,並且不須要咱們進行手動同步。
#配置MAVEN信息。我這裏使用的maven構建項目,包括編譯打包發佈等,所以這裏配置MAVEN的相關信息,"Goals"配置的是maven的打包指令,先clean舊文件,再install新文件,同時-Dskip Tests跳過測試。
同時咱們還添加了一個「Execute shell」,裏面一共有兩句話:
「BUILD_ID=DONTKILLME」:這裏是由於jenkins會存在殺死衍生進程的狀況,配置這條命令能夠阻止它亂殺。
「sh /******/**.sh」:sh命令不用多說了,就是運行sh文件的意思。我這裏編寫了一個運行腳本,maven打包以後,由這個腳原本運行jar。
#下面的內容純粹就是分享一下個人這個腳本
內容比較簡單,就是先檢查程序是否在運行中,若是是,就先強行殺死程序(kipp -9)。
因爲maven的install指令將jar安裝在了maven倉庫中,咱們直接從倉庫將項目包cp到指定的目錄下。
而後經過java指令啓動jar文件。
tomcat_pid=`ps -ef | grep java | grep autopayment-data.jar |awk '{print $2}'`
echo $tomcat_pid
if [ -n "$tomcat_pid" ]; then
echo "Current autopayment-data Pid:" ${tomcat_pid}
kill -9 ${tomcat_pid}
echo "This autopayment-data Had Shutdown!"
fi
echo "Now autopayment-data Is Starting To Publish..."
#curl -X POST http://localhost:9070/autopayment/shutdown
rm -rf /u01/autopayment-data/autopayment-data.jar
cp /usr/local/mvnRespo/com/hrtpayment/autopayment-data/1.0-SNAPSHOT/autopayment-data-1.0-SNAPSHOT.jar /u01/autopayment-data/autopayment-data.jar
echo "start autopayment-data ....."
cd /u01/autopayment-data
nohup java -jar -Xmx1024m -Xms256m -Xmn128m -Xss256k -XX:MaxPermSize=512m -Dfile.encoding=UTF-8 /u01/autopayment-data/autopayment-data.jar --spring.profiles.active=dev &
到此,咱們的自動構建項目已經配置完成。