Jenkins使用指令碼一鍵拉取程式碼併發布應用

尹正杰發表於2024-11-22

                                              作者:尹正傑

版權宣告:原創作品,謝絕轉載!否則將追究法律責任。

目錄
  • 一.建立web伺服器
    • 1 安裝nginx服務
    • 2 啟動nginx服務
  • 二.編寫指令碼拉取gitlab程式碼併發布到nginx服務
    • 1 配置Jenkins節點與web伺服器免密登入
    • 2 編寫指令碼並測試
  • 三.使用Jenkins呼叫指令碼
    • 1 新建任務
    • 2 配置Jenkins呼叫指令碼
    • 3 立即構建Jenkins專案

一.建立web伺服器

1 安裝nginx服務

apt update && apt -y install nginx


溫馨提示:
	此處實驗,我將10.0.0.13和10.0.0.14作為web伺服器。需要安裝nginx服務喲。

2 啟動nginx服務

systemctl enable --now nginx

二.編寫指令碼拉取gitlab程式碼併發布到nginx服務

1 配置Jenkins節點與web伺服器免密登入

	(1)建立秘鑰對
[root@ubuntu12.yinzhengjie.com jenkins]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa -q
 
 	(2)配置免密登入
[root@ubuntu12.yinzhengjie.com jenkins]# ssh-copy-id 10.0.0.13
[root@ubuntu12.yinzhengjie.com jenkins]# ssh-copy-id 10.0.0.14

2 編寫指令碼並測試

	(1)建立指令碼儲存路徑
[root@ubuntu12.yinzhengjie.com jenkins]# mkdir -pv /yinzhengjie/script/jenkins

	
	(2)編寫指令碼
[root@ubuntu12.yinzhengjie.com jenkins]# cd /yinzhengjie/script/jenkins
[root@ubuntu12.yinzhengjie.com jenkins]# cat deploy-bird-script.sh
#!/bin/bash


# 定義要釋出的後端web伺服器
HOST_LIST="
10.0.0.13
10.0.0.14
"

# 定義git應用名稱
APP=bird

# 定義後端web的nginx儲存原始碼的路徑
APP_PATH=/var/www/html

# 拉取程式碼到本地
download () {
    rm -rf ${APP}
    git clone git@www.yinzhengjie.com:dev/bird.git
}

# 將應用部署到遠端倉庫伺服器
deploy () {
    for i in ${HOST_LIST};do
        scp -r ${APP}/* $i:${APP_PATH}/
    done
}

# 呼叫指令碼
download
deploy
[root@ubuntu12.yinzhengjie.com jenkins]# 

	
	(3)呼叫指令碼測試可用性
[root@ubuntu12.yinzhengjie.com jenkins]# chmod +x deploy-bird-script.sh
[root@ubuntu12.yinzhengjie.com jenkins]# 
[root@ubuntu12.yinzhengjie.com jenkins]# bash deploy-bird-script.sh

三.使用Jenkins呼叫指令碼

1 新建任務

如上圖所示,我們依舊可以點選新建任務。

如下圖所示,我們可以根據已有的專案配置建立新的專案。

2 配置Jenkins呼叫指令碼

如上圖所示,修改專案的描述資訊。

如下圖所示,使用Jenkins呼叫我們寫好拉取程式碼的指令碼。

3 立即構建Jenkins專案

如上圖所示,立即構建Jenkins專案,構建完成後,如下圖所示,進行控制檯輸出即可。

如下圖所示,咱們的Jenkins就成功釋出啦!

如下圖所示,我們可以訪問nginx的WebUI,來檢視程式碼是否部署成功啦。

相關文章