linux下搭建Jenkins實現自動化部署

一 .安裝Jenkins

1.下載 Jenkins官方地址 https://jenkins.io/download/

sudo wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat/jenkins.repo
sudo rpm --import https://pkg.jenkins.io/redhat/jenkins.io.key

2.安裝 Jenkins (yum安裝Jenkins默認路徑爲 /var/lib/jenkins
sudo yum install jenkins

3.jenkins的默認設置
 Jenkins會隨系統啓動而啓動。詳情參照/etc/init.d/jenkins
 Jenkins會創建一個用戶叫做jenkins, 如果你修改了user,則要修修改所屬者:/var/log/jenkins,/var/lib/jenkins,/var/cache/jenkins
 如果遇到問題,查看日誌/var/log/jenkins/jenkins.log
 配置文件/etc/sysconfig/jenkins
 默認啓用8080
4.配置端口

vi /etc/sysconfig/jenkins

默認8080,改成自己想要的端口

JENKINS_PORT="8080"

5.啓動和關閉Jenkins

sudo service jenkins start
sudo service jenkins stop

6.配置java maven環境 略 (自行百度配置)

二.進入Jenkins後臺

1.打開後臺地址(我端口修改成了8888,ip自行替換成自己外網的ip)

http://127.0.0.1:8888

在這裏插入圖片描述

2.查看密碼,初始化進入

cat /var/lib/jenkins/secrets/initialAdminPassword

3.安裝插件 選擇第一個默認插件即可
在這裏插入圖片描述

4.設置管理員
在這裏插入圖片描述

5.安裝git

yum install git

三.構建job

1.任務名稱自取,選擇第一個
在這裏插入圖片描述

2.General: 勾選github 填寫自己git項目地址 在這裏插入圖片描述

3.源碼管理 添加用戶憑證 填寫git 用戶名和密碼
在這裏插入圖片描述

4.構建 (springoot jar包形式部署)
選擇執行shell,這裏我分爲2大步驟,
1)git下源碼 並切換到工作空間項目根目錄執行mvn install打包
2)重新發布項目 先停止項目,再拷貝打好的jar包 ,最後啓動項目
在這裏插入圖片描述
注:上面的nohup後面少了個sh

stop.sh 找到jar包的進程並殺死

#!/bin/sh
echo "查找進程id"
pid=`ps -ef | grep webStencil-0.0.1-SNAPSHOT.jar | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
#!kill -9 強制終止
   echo "kill -9 的pid:" $pid
   kill -9 $pid
fi

replace.sh 替換新jar包

#!/bin/sh
echo "先刪除/home/m2/script的jar"
cd /home/m2/script/app
if [ -f /home/m2/script/app/webStencil-0.0.1-SNAPSHOT.jar ]; then
  echo "文件存在刪除"
  rm -rf webStencil-0.0.1-SNAPSHOT.jar
fi
echo "刪除成功"

echo "開始複製jar到/home/m2/script"

cp /var/lib/jenkins/workspace/web/target/webStencil-0.0.1-SNAPSHOT.jar  /home/m2/script/web

echo "複製成功"

start.sh 啓動jar

#!/bin/sh
echo "jar方式啓動"
chmod 777 /home/m2/script/web/webStencil-0.0.1-SNAPSHOT.jar
cd /home/m2/script/web
java -jar webStencil-0.0.1-SNAPSHOT.jar
echo "啓動成功"

注意點:
1 默認jenkins服務以jenkins用戶運行,這時在jenkins執行ant腳本時可能會發生沒有權限刪除目錄,覆蓋文件等情況。可以讓jenkins以root用戶運行來解決這個問題。

1).將jenkins賬號分別加入到root組中

gpasswd -a root jenkins

2).修改/etc/sysconfig/jenkins文件中,

JENKINS_USER=root
JENKINS_GROUP=root

修改爲root權限運行 重啓服務,搞定

2 .啓動jar包的時候 如果直接 sh start.sh啓動後進程就會被殺死

BUILD_ID=dontKillMe nohup /home/m2/script/web/start.sh >>./weblog/`date +%F`.web.log &

最後保存配置後點擊立即構建,產看控制檯構建情況慢慢調試即可

四.遠程連接

  1. 安裝Publish Over SSH插件
  2. 全局配置裏配置遠程賬號
    在這裏插入圖片描述
    3.項目構建配置裏增加構建後操作,即可上傳文件到指定服務器
    在這裏插入圖片描述
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章