濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明

jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明

熱門(mén)標(biāo)簽:營(yíng)銷電銷機(jī)器人招商 菏澤crm外呼系統(tǒng)價(jià)格 申請(qǐng)400電話號(hào)碼多少錢(qián) 物超所值的400電話申請(qǐng) 百應(yīng)電銷機(jī)器人靠譜嗎 信陽(yáng)銷售外呼系統(tǒng)招商 遼寧電銷平臺(tái)外呼系統(tǒng)軟件 coreldraw地圖標(biāo)注 如何在各種地圖標(biāo)注自己的地址

Publish Over SSH插件使用

在使用Publish Over SSH之前,需要制作SSH私鑰。機(jī)器間做免密登錄配置。假設(shè)機(jī)器A,ip為192.168.AA.AAA,機(jī)器B: 192.168.BB.BBB,機(jī)器A能夠免密登錄機(jī)器B,機(jī)器B能夠免密登錄機(jī)器A,制作方式是:

進(jìn)入A機(jī)器,執(zhí)行:

cd ~
ssh-keygen -t rsa

通過(guò)下面的命令,表示可以通過(guò)機(jī)器192.168.AA.AAA免密登錄到機(jī)器192.168.BB.BBB

ssh-copy-id 192.168.BB.BBB

驗(yàn)證方式是:在A機(jī)器上執(zhí)行ssh 192.168.BB.BBB,然后執(zhí)行ifconfig檢查當(dāng)前的ip,若發(fā)現(xiàn)機(jī)器的ip已經(jīng)變成了192.168.BB.BBB說(shuō)明免密登錄設(shè)置成功。

進(jìn)入B機(jī)器,執(zhí)行:

cd ~
ssh-keygen -t rsa
ssh-copy-id 192.168.AA.AAA

驗(yàn)證方式是:在B機(jī)器上執(zhí)行ssh 192.168.AA.AAA,然后執(zhí)行ifconfig檢查當(dāng)前的ip,若發(fā)現(xiàn)機(jī)器的ip已經(jīng)變成了192.168.BB.BBB說(shuō)明免密登錄設(shè)置成功。

在系統(tǒng)配置中配置Publish Over SSH

進(jìn)入Jenkins—>系統(tǒng)管理—>系統(tǒng)設(shè)置,配置Publish over SSH

參數(shù)說(shuō)明:

Passphrase:密碼(key的密碼,如果你設(shè)置了)
Path to key:key文件(私鑰)的路徑
Key:將私鑰復(fù)制到這個(gè)框中
Disable exec:禁止運(yùn)行命令
私有配置:
SSH Server Name:標(biāo)識(shí)的名字(隨便你取什么)
Hostname:需要連接ssh的主機(jī)名或ip地址(建議ip)
Username:用戶名
Remote Directory:遠(yuǎn)程目錄
Use password authentication, or use a different key:可以替換公共配置(選中展開(kāi)的就是公共配置的東西,這樣做擴(kuò)展性很好)
私有配置的高級(jí):
Port:端口(默認(rèn)22)
Timeout (ms):超時(shí)時(shí)間(毫秒)默認(rèn)即可
Disable exec:禁止運(yùn)行命令
Test Configuration:測(cè)試連接

對(duì)構(gòu)建的項(xiàng)目中的SSH進(jìn)行配置:

在執(zhí)行前要配合Build–>Post Steps中的Execute shell配置,執(zhí)行scp命令,將要拷貝的項(xiàng)目先遠(yuǎn)程拷貝到遠(yuǎn)程機(jī)器上。在Execute shell中的內(nèi)容如下:

scp -r /root/.jenkins/workspace/youxuan_api_pre/qt360-web/target/youxuan_api root@192.168.BB.BBB:/usr/local/jenkinsTempFolder/
export BUILD_ID=DONTKILLME

點(diǎn)擊構(gòu)建的項(xiàng)目—>配置–>構(gòu)建后操作,選擇Send build artifacts over SSH,進(jìn)行如下配置(注意:下面的Exec command是遠(yuǎn)程機(jī)器上執(zhí)行的腳本):

腳本內(nèi)容如下:

#!/bin/bash
echo "==================start deploy project========================="
ps -aux | grep /usr/local/tomcat/ | grep -v grep > tomcat_info.txt
sed 's/ / /g' tomcat_info.txt > tomcat_info1.txt
sed 's/ / /g' tomcat_info1.txt > tomcat_info.txt
sed 's/ / /g' tomcat_info.txt > tomcat_info1.txt 
cat tomcat_info1.txt | cut -d' ' -f 2 > tomcat_info.txt
for line in `cat tomcat_info.txt`
do
  kill -9 $line
done
cd /usr/local/tomcat/webapps
rm -rf youxuan_api*
mv /usr/local/jenkinsTempFolder/youxuan_api /usr/local/tomcat/webapps
/etc/init.d/tomcat start
sync
echo 3 > /proc/sys/vm/drop_caches
echo "==================deploy project success========================="

參數(shù)說(shuō)明:

SSH  Server Name:選個(gè)一個(gè)你在系統(tǒng)設(shè)置里配置的配置的名字
Transfer Set Source files:需要上傳的文件(注意:相對(duì)于工作區(qū)的路徑??春竺娴呐渲每梢蕴顚?xiě)多個(gè),默認(rèn)用,分隔)
Remove prefix:移除目錄(只能指定Transfer Set Source files中的目錄)
Remote directory:遠(yuǎn)程目錄(根據(jù)你的需求填寫(xiě)吧,因?yàn)槲疫@兒是測(cè)試,所以偷懶沒(méi)有填寫(xiě)。默認(rèn)會(huì)繼承系統(tǒng)配置)
Exec command:把你要執(zhí)行的命令寫(xiě)在里面
(新版本的要求Transfer Set Source files和Exec command都要填寫(xiě),可以不了他。老版本的允許只填寫(xiě)一個(gè))
高級(jí):
Exclude files:排除的文件(在你傳輸目錄的時(shí)候很有用,使用通配符,例如:**/*.log,**/*.tmp,.git/)
Pattern separator:分隔符(配置Transfer Set Source files的分隔符。如果你這兒更改了,上面的內(nèi)容也需要更改)
No default excludes:禁止默認(rèn)的排除規(guī)則(具體的自己看幫助)
Make empty dirs:此選項(xiàng)會(huì)更改插件的默認(rèn)行為。默認(rèn)行為是匹配該文件是否存在,如果存在則創(chuàng)建目錄存放。選中此選項(xiàng)會(huì)直接創(chuàng)建一個(gè)目錄存放文件,即使是空目錄。(個(gè)人理解)
Flatten files:只上傳文件,不創(chuàng)建目錄(除了遠(yuǎn)程目錄)
Remote directory is a date format:遠(yuǎn)程目錄建立帶日期的文件夾(需要在Remote directory中配置日期格式),具體格式參考下表:
Remote directory    Directories created
'qa-approved/'yyyyMMddHHmmss    qa-approved/20101107154555
'builds/'yyyy/MM/dd/'build-${BUILD_NUMBER}'    builds/2010/11/07/build-456 (if the build was number 456)
yyyy_MM/'build'-EEE-d-HHmmss    2010_11/build-Sun-7-154555
yyyy-MM-dd_HH-mm-ss 2010-11-07_15-45-55
Exec timeout (ms):運(yùn)行腳步的超時(shí)時(shí)間(毫秒)
Exec in pty:模擬一個(gè)終端執(zhí)行腳步
Add Transfer Set:增加一個(gè)配置

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

標(biāo)簽:內(nèi)江 江門(mén) 廈門(mén) 玉樹(shù) 泰安 湖北 江西 瀘州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明》,本文關(guān)鍵詞  jenkins,中,通過(guò),Publish,Over,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于jenkins中通過(guò)Publish Over SSH插件將項(xiàng)目部署到遠(yuǎn)程機(jī)器上的講解說(shuō)明的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    天水市| 沙雅县| 施秉县| 赞皇县| 友谊县| 牙克石市| 滁州市| 商河县| 黄骅市| 文昌市| 昆山市| 连云港市| 论坛| 新泰市| 扎鲁特旗| 临沭县| 会理县| 鄂温| 新巴尔虎右旗| 遂宁市| 新宾| 嘉荫县| 巴林左旗| 清水河县| 文安县| 鹿泉市| 海林市| 双城市| 娱乐| 合作市| 蒙自县| 萨迦县| 贵溪市| 峨山| 微山县| 静海县| 万盛区| 宝应县| 沈丘县| 始兴县| 鄱阳县|