Linux(Centos)部署Jenkins,並配置Git生成Jar包進行發布部署


 

  需要先安裝jdk、maven、git環境

jdk安裝:https://www.cnblogs.com/pxblog/p/10512886.html

maven安裝:https://www.cnblogs.com/pxblog/p/13447980.html

git安裝:https://www.cnblogs.com/pxblog/p/13447606.html

 

 

下載安裝包

官網地址:https://www.jenkins.io/download/

也可以

https://yvioo.lanzous.com/iZx8Zfcsoti

 

下載后上傳到服務器上,直接在文件夾底下運行

 nohup java -jar jenkins.war --httpPort=9090 &

 --httpPort 是指定端口啟動 默認是8080端口

 nohup 是后台運行

 

也可以

放到tomcat下的webapps里面,然后啟動tomcat,如果是這種方式的話,要在conf/server.xml上配置 URIEncoding=“UTF-8”  保證編碼格式

然后啟動tomcat服務即可

 

然后瀏覽器打開,訪問 服務器IP:設置的端口 

打開之后等待一會就會進入這個界面

 

然后執行,查看密碼

cat /root/.jenkins/secrets/initialAdminPassword

將打印出來的密碼輸入進去,點擊繼續

 

 這里我們選擇 “安裝推薦的插件”即可,然后會進入下面這個頁面,這里等待進度條走完,安裝完所有依賴即可

 

 安裝完成后,這里可以創建,也可以使用默認的admin ,密碼就是我們之前找到 這個下 /root/.jenkins/secrets/initialAdminPassword 密鑰

 

 點擊保存並完成即可

 

 

 

 

 接着進行Jenkins的配置,點擊系統管理-全局工具配置

 

 

 

 

 

也可以用下面這個方式配置,登錄用戶允許操作 賬號就是 admin  密碼就是 一開始輸入的文件里面的那個密鑰

 

 

 

 然后點擊保存,

 

全局工具配置

 

配置maven環境 這里我們選擇本服務器安裝的maven目錄下settings文件 這里根據自己的來配置

 

 

 這里選擇本服務器的jdk目錄 也是根據自己的來 別名可以自己取

 

 

 

 

 這里配置maven環境 這個下面會用到

 

 

 

 

   Git環境配置

 

 

 

 

然后點擊保存

 

 

安裝插件

 

 

 

 

 要安裝兩個插件 

Publish Over SSH、SSH

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 進行系統配置

 

 

 設置項目部署服務器賬號密碼

 

 

 

 

 創建一個任務

 

 

 

 

 

這里的任務名稱可以和項目名稱一樣

 

 

 

 

 點擊確定進行保存

 

 

 

 進行任務構建配置

 

 

 

 

 這里進行git代碼的用戶名密碼配置 

Repository URL :就是遠程倉庫的地址

Credentials :這個就是憑證

以及可以在下面指定分支

這一步驟你可以理解為是 Jenkins要從你配置的git地址上把你的代碼下載下來

 

  構建里面進行選擇

 

 

 

 

 

 

 

 

 

 這里選擇我們之前在全局配置里面配置的maven信息

然后在目標里面填寫 

clean compile package

這里就是把你的代碼下載下來 然后進行maven打包

 

 

 

 也是在構建 下面繼續增加 

 

 

 

上面這個 

SSH site :這個選擇上面在全局里面配置的要進行項目部署的所在服務器 (注:以下構建所用的都是這個服務器配置)

Command:這里填寫

#!/bin/bash --login
if [ ! -d "/data/java/temp/${JOB_NAME}" ];then
mkdir -p /data/java/temp/${JOB_NAME}
fi

這個的作用是 判斷 文件夾是否存在 不存在進行創建 

 ${JOB_NAME} :這個是任務名稱的占位符

 

接着繼續增加

 

 

scp -r ${WORKSPACE}/target/*.jar root@ip地址:/data/java/temp/${JOB_NAME}/${JOB_NAME}.jar
rm -fr ${WORKSPACE}/*

 

${WORKSPACE}/target/*.jar  這個是生成的jar包路徑,如果項目多層級的話,可能不是再根目錄下,具體的根據自己的來,可以通過這個工作空間 看自己的jar包生成位置,然后把這個位置替換成自己的即可

 

 

 

 

這里的ip地址要替換成自己的

${JOB_NAME} :這個是任務名稱的占位符

${WORKSPACE} :這個是工作空間

這里的作用是把構建生成的jar包上傳到部署的服務器目錄上(Jenkins部署的服務器和項目部署的服務器不是同一台的時候使用)

這里使用scp命令 用這個命令正常情況下是要輸入密碼的 但是這里我們做了配置,所以不需要輸入密碼

具體可以參考:https://www.cnblogs.com/pxblog/p/14396421.html

 

接着繼續增加

 

 具體腳本

#!/bin/bash --login
server_path="/data/java/server/"
temp_path="/data/java/temp/${JOB_NAME}"
temp_jar="${temp_path}/${JOB_NAME}.jar"
#backup
if [ ! -d "${server_path}" ];then
mkdir -p ${server_path}
fi
if [ ! -d "${temp_path}" ];then
mkdir -p ${temp_path}
fi
if [ ! -d "${server_path}/logs" ];then
mkdir -p ${server_path}/logs
fi
cd ${server_path}
# stop service
pid=`ps -ef | grep "${JOB_NAME}" | grep -v "tail" | grep -v "grep" | awk '{print $2}'`
if [ "$pid" ];then
echo "pid is $pid"
kill -9 "$pid"
else
echo "server already stopped!"
fi
# start
datestr=`date +%Y%m%d`
\cp -fr ${temp_path}/*.jar .
nohup /usr/java/jdk1.8.0_161/bin/java -jar ${JOB_NAME}.jar  >>${server_path}/logs/${JOB_NAME}-${datestr}.log 2>&1 &
rm -fr ${temp_path}/*.jar

 

說明:

server_path: 這個是項目jar包所在路徑

temp_path:這個是用來jar包生成的臨時文件夾

 

nohup /usr/java/jdk1.8.0_161/bin/java -jar ${JOB_NAME}.jar  >>${server_path}/logs/${JOB_NAME}-${datestr}.log 2>&1 &

這個是nohup啟動,注意這里的java所在路徑要根據自己的實際的來 其實就是 java -jar 命令

 

以上就算完成了 所有的構建步驟要按照順序來

 

 

 點擊這里看控制台輸出信息

 

接着就是配置鈎子了

 

 

 

URL地址下面顯示是 JENKINS_URL/job/XXXX/build?token=TOKEN_NAME 

這里填寫JENKINS_TOKEN就是我們上面的TOKEN_NAME

JENKINS_URL這個是我們一開始安裝的時候默認填寫的Jenkins部署地址

然后拼接成一個完成的URL地址

其實你可以理解為 你訪問這個地址就會觸發構建操作,你把地址放到瀏覽器里面訪問 也會進行構建操作

 

gitee平台

Jenkins中下載插件,gitee 插件

 

 

然后 在項目配置里面

 

 

 

然后保存 

 

然后gitee平台上

 

 

 

 這里的URL地址和WebHook 密碼 就和上面的對應  然后每次提交代碼到gitee上 都會觸發構建

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM