背景
嘗試在本地搭建一個(gè)自動(dòng)化上線(xiàn)工具,首先嘗試簡(jiǎn)單的上線(xiàn)部署功能,并沒(méi)有實(shí)現(xiàn)自動(dòng)化部署(需要手動(dòng)構(gòu)建)。
所需環(huán)境
因?yàn)閖enkins是java編寫(xiě)的軟件,所以在安裝之前,需要將java相關(guān)環(huán)境安裝配置完成。
-
JAVAjava環(huán)境.png
-
tomcattomcat.png
下載安裝Jenkins
- 下載
從jenkins官網(wǎng)下載對(duì)應(yīng)版本的jenkins war包 - 安裝
將對(duì)應(yīng)的war包下載至對(duì)應(yīng)tomcat的webapps目錄之下,然后訪(fǎng)問(wèn)該目錄,初次配置需要去安裝目錄(界面有對(duì)應(yīng)地址)復(fù)制密碼粘貼運(yùn)行。然后根據(jù)自己需要進(jìn)行插件安裝(沒(méi)有特殊需求,默認(rèn)安裝即可)
新建任務(wù)
-
選擇模版image1.png
這里選擇自由風(fēng)格軟件項(xiàng)目即可,有特殊需求可以自由選擇。
-
配置gitimage2.png
這里主動(dòng)構(gòu)建的代碼來(lái)源是git,所以選擇git。將你想要構(gòu)建的項(xiàng)目url寫(xiě)入,并且選擇對(duì)應(yīng)分支(這里選擇master)。
- 構(gòu)建選擇執(zhí)行shell,然后將更新代碼的命令寫(xiě)進(jìn)去。image3.png
rsync -alvr --exclude=.git --exclude=/.env * work@ip:/home/work/
shell命令
-
rsync
rsync 即遠(yuǎn)程同步命令 是在linux中局部拷貝和同步文件/目錄的一個(gè)命令。
rsync 有以下三個(gè)優(yōu)點(diǎn):- 可以有效將文件復(fù)制到遠(yuǎn)程并同步
- 可以支持復(fù)制 鏈接 設(shè)備 所有者 組 權(quán)限
- 比遠(yuǎn)程復(fù)制SCP更快,它復(fù)制更新的內(nèi)容 scp復(fù)制所有
- 它消耗更少帶塊,它使用壓縮與解壓縮的方式在發(fā)送與接收數(shù)據(jù)
rsync 基礎(chǔ)語(yǔ)法
rsync options source destination與rsync命令一起使用的一些常見(jiàn)選項(xiàng)
-v:詳細(xì)
-r:將數(shù)據(jù)遞歸(但不保存時(shí)間戳和權(quán)限,同時(shí)傳輸數(shù)據(jù)
-a:歸檔模式下,歸檔模式允許遞歸地拷貝文件,同時(shí)也保留了符號(hào)鏈接,文件權(quán)限,用戶(hù)組所有權(quán)和時(shí)間戳
-z:壓縮文件中的數(shù)據(jù)
-h:在人類(lèi)可讀的格式人類(lèi)可讀,輸出數(shù)字 命令含義
rsync -alvr --exclude=.git --exclude=/.env * work@ip:/home/work/
將代碼以 alvr 方式 排除.git目錄 .env文件 外的所有文件 遠(yuǎn)程同步到ip為ip的機(jī)器的/home/work/目錄下為什么不需要使用密碼
在jenkins機(jī)器上添加了對(duì)于目標(biāo)機(jī)器ip的免密碼登陸,具體如何添加可訪(fǎng)問(wèn)。




