最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Jenkins之Windows服務(wù)器通過ssh遠(yuǎn)程發(fā)布

 更新時(shí)間:2025年09月02日 15:14:07   作者:關(guān)關(guān)長語  
該文章介紹了在Windows系統(tǒng)中通過SSH插件實(shí)現(xiàn)Jenkins遠(yuǎn)程構(gòu)建部署的配置方法,包括安裝OpenSSH、配置遠(yuǎn)程服務(wù)器連接參數(shù)、設(shè)置文件傳輸路徑及執(zhí)行命令,并測試連接確保功能正常

一、安裝插件

通過ssh訪問遠(yuǎn)程主機(jī),需要為Windows系統(tǒng)的主機(jī)安裝Open SSH,防火墻開放22端口,本地Jenkins安裝插件安裝publish over ssh插件,安裝后重啟Jenkins服務(wù)。

查看任務(wù)中構(gòu)建后操作,可以看到多出選項(xiàng)Send build artifacts over SSH選項(xiàng),則表明安裝成功。

需要的配置相關(guān)配置,如果用戶為首次使用,則需要轉(zhuǎn)到首頁,選擇 系統(tǒng)配置添加對(duì)應(yīng)的 SSH 發(fā)布配置,首頁如下:

二、系統(tǒng)配置

2.1、配置遠(yuǎn)程SSH服務(wù)端

System Configuration-Configure System-Publish over SSH中,配置一個(gè)遠(yuǎn)程ssh連接配置,

各個(gè)輸入框,用途如下:

  • Passphtase:對(duì)應(yīng)用戶私鑰的文件加密秘鑰,默認(rèn)可以是空,依據(jù)實(shí)際情況考慮是否填寫。
  • Path to key:用戶實(shí)際私鑰所在文件的絕對(duì)或者相對(duì)路徑,與 Key 考慮二者選擇一個(gè)即可。
  • Key:用戶私鑰對(duì)應(yīng)的實(shí)際內(nèi)容,與 Path to key 二者選擇一個(gè)即可。

?

配置 SSH 服務(wù)地址:

輸入框內(nèi)容用途如下:

  • Name:當(dāng)前 SSH 服務(wù)端配置記錄的名稱,用于做為記錄的唯一辨識(shí),盡量不要重名。
  • Hostname:一般為服務(wù)端所屬的 IP,其他端口需要通過 高級(jí)配置級(jí)進(jìn)行指定。
  • Username:遠(yuǎn)程訪問服務(wù)器時(shí),提供的訪問用戶名,一般為服務(wù)端提前配置好的用戶名。
  • Remote Directory:遠(yuǎn)程訪問時(shí),非默認(rèn)訪問路徑時(shí),需要用戶依據(jù)實(shí)際需求進(jìn)行指定(Windows僅僅適用于當(dāng)前盤符)。

?確認(rèn)配置無誤后,點(diǎn)擊 Test Configuration 按鈕進(jìn)行測試。配置成功,測如上圖返回結(jié)果為 Success 字樣。

2.2、高級(jí)配置

高級(jí)配置中,支持通過用戶名和密碼進(jìn)行遠(yuǎn)程訪問,同時(shí)包含,需要訪問的服務(wù)端ssh 端口為非22端口時(shí)的相關(guān)配置,以及代理相關(guān)配置操作輸入項(xiàng),此處不一一展開討論。

SSH Server 配置無誤后,點(diǎn)擊保存即可。

三、項(xiàng)目添加配置

回到目標(biāo)項(xiàng)目中,點(diǎn)擊構(gòu)建后項(xiàng)目,選擇Send build artifacts over SSH 選項(xiàng),效果如下:

上述轉(zhuǎn)換 Transfers 輸入內(nèi)容用途如下:

  • Source files 需要上傳的文件,可以使用匹配符號(hào),具體查看官方文檔。
  • Remove prefix 上傳是需要移除的文件前綴,避免拷貝文件時(shí),在服務(wù)端生成同樣目錄層級(jí)。
  • Remote directory 上傳到遠(yuǎn)程服務(wù)器對(duì)應(yīng)文件目錄。
  • Exec command  用于在執(zhí)行轉(zhuǎn)換后,進(jìn)行后續(xù)的指令操作,方便后續(xù)構(gòu)建的處理操作。

?其中可以使用,Jenkins environment variables,具體可以查看本地地址 http://localhost:8060/env-vars.html/,讀者依據(jù)實(shí)際的部署端口,進(jìn)行相關(guān)環(huán)境變量的查看。

參考鏈接:https://plugins.jenkins.io/publish-over-ssh/

高級(jí)配置中,可以添加需要排除的文件,用于在轉(zhuǎn)換過程中,排除上傳的文件,** 表示全文本匹配。

筆者案例,填寫如下:

確認(rèn)無后,點(diǎn)擊保存?;氐巾?xiàng)目頁面,進(jìn)行立即構(gòu)建,查看項(xiàng)目控制臺(tái)輸出如下:

# 省略以上內(nèi)容
C:\Windows\System32\config\systemprofile\AppData\Local\Jenkins\.jenkins\workspace\ynkenginemap\JenkinsDemo>exit 0 
SSH: Connecting from host [LAPTOP-86GF4FKI]
SSH: Connecting with configuration [localserver] ...
SSH: Disconnecting configuration [localserver] ...
SSH: Transferred 7 file(s)
Finished: SUCCESS

通過 xshell 可以看到對(duì)應(yīng)工作目錄中,已經(jīng)生成一個(gè) jenkins 的文件目錄,文件目錄中,包含對(duì)應(yīng)本地發(fā)布的項(xiàng)目文件。

C:\Users\ggcyuser>dir jenkins                                                                          
 驅(qū)動(dòng)器 C 中的卷是 Windows                                                                            
 卷的序列號(hào)是 22DB-1BE1                                                                               
                                                                                                      
 C:\Users\ggcyuser\jenkins 的目錄                                                                     
                                                                                                      
2021/10/06  20:35    <DIR>          .                                                                 
2021/10/06  20:35    <DIR>          ..                                                                
2021/10/06  20:35               168 appsettings.Development.json                                      
2021/10/06  20:35           106,809 JenkinsDemo.deps.json                                             
2021/10/06  20:35             9,216 JenkinsDemo.dll                                                   
2021/10/06  20:35           174,592 JenkinsDemo.exe                                                   
2021/10/06  20:35            20,016 JenkinsDemo.pdb                                                   
2021/10/06  20:35               311 JenkinsDemo.runtimeconfig.json                                    
2021/10/06  20:35               555 web.config                                                        
               7 個(gè)文件        311,667 字節(jié)                                                           
               2 個(gè)目錄 34,109,632,512 可用字節(jié)

此時(shí),可能讀者就會(huì)問,那如果需要遠(yuǎn)程訪問的文件目錄,并不是當(dāng)前賬戶所在的根目錄如何處理?

其實(shí)對(duì)于這個(gè)問題,分情況處理,主要針對(duì)遠(yuǎn)程賬戶默認(rèn)用戶目錄與非默認(rèn)目錄。

3.1、默認(rèn)用戶目錄

默認(rèn)空間下的子級(jí)目錄切換可以通過配置的 SSH Servers 進(jìn)行處理,在配置 SSH Servers 就提到過如下輸入字段:

Remote Directory 遠(yuǎn)程訪問時(shí),非默認(rèn)訪問路徑時(shí),需要用戶依據(jù)實(shí)際需求進(jìn)行指定(Windows僅僅適用于當(dāng)前盤符)。

如果用戶有實(shí)際需求,可以在當(dāng)前字段中進(jìn)行特定目錄的目錄配置,需要注意的是,目前筆者測試結(jié)果為通過 SSH Server 方式僅僅適用于當(dāng)前Windows服務(wù)端的所在盤符,跨盤符操作不支持。

此處為了方便,筆者選擇非默認(rèn)目錄,設(shè)置為服務(wù)器中的目錄 jenkins,配置一個(gè)新的 SSH Severs,具體內(nèi)容如下:

項(xiàng)目配置中對(duì)應(yīng)的 SSH Server 修改為當(dāng)前配置好的 directoryserver

保存后,進(jìn)行構(gòu)建,控制臺(tái)輸出如下:

# 省略以上內(nèi)容
C:\Windows\System32\config\systemprofile\AppData\Local\Jenkins\.jenkins\workspace\ynkenginemap\JenkinsDemo>exit 0 
SSH: Connecting from host [LAPTOP-86GF4FKI]
SSH: Connecting with configuration [directoryserver] ...
SSH: Disconnecting configuration [directoryserver] ...
SSH: Transferred 7 file(s)
Finished: SUCCESS

3.2、非默認(rèn)目錄

雖然無法直接切換目錄,但是可以考慮在文件上傳后,通過指令方式,將上傳的文件進(jìn)行指定目錄的拷貝,此時(shí)需要使用的到 Exec command 輸入框,進(jìn)行輸入轉(zhuǎn)換之后的文件其他處理操作。

當(dāng)前指令xcopy /s /y jenkins "E:\Study\Servers\jenkins",表示拷貝并在目標(biāo)文件夾文件存在時(shí)進(jìn)行強(qiáng)制覆蓋操作,在 xshell 中能夠正常使用,保存后,進(jìn)行 Build Now,查看控制臺(tái)輸出結(jié)果如下:

# 省略以上內(nèi)容
C:\Windows\System32\config\systemprofile\AppData\Local\Jenkins\.jenkins\workspace\ynkenginemap\JenkinsDemo>exit 0 
SSH: Connecting from host [LAPTOP-86GF4FKI]
SSH: Connecting with configuration [localserver] ...
SSH: EXEC: completed after 201 ms
SSH: Disconnecting configuration [localserver] ...
SSH: Transferred 7 file(s)
Finished: SUCCESS

SSH 遠(yuǎn)程可以直接執(zhí)行指令,而不考慮文件轉(zhuǎn)換和拷貝,上述操作可以將文件轉(zhuǎn)換和指令執(zhí)行進(jìn)行拆分,操作如下:

總結(jié)

上述為筆者對(duì)自定義構(gòu)建項(xiàng)目的操作與技巧說明。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Scala遞歸函數(shù)調(diào)用自身

    Scala遞歸函數(shù)調(diào)用自身

    這篇文章主要介紹了Scala遞歸函數(shù),Scala遞歸函數(shù)是一種函數(shù)可以調(diào)用自身的函數(shù),直到滿足某個(gè)特定的條件為止。在函數(shù)式編程的語言中,遞歸函數(shù)起著重要的作用,因?yàn)樗梢杂脕肀硎狙h(huán)或迭代的邏輯
    2023-04-04
  • Mybatis高級(jí)映射、動(dòng)態(tài)SQL及獲得自增主鍵的解析

    Mybatis高級(jí)映射、動(dòng)態(tài)SQL及獲得自增主鍵的解析

    MyBatis 本是apache的一個(gè)開源項(xiàng)目iBatis, 2010年這個(gè)項(xiàng)目由apache software foundation 遷移到了google code,并且改名為MyBatis。這篇文章主要介紹了Mybatis高級(jí)映射、動(dòng)態(tài)SQL及獲得自增主鍵的相關(guān)資料,需要的朋友可以參考下
    2016-11-11
  • SpringCloud的Gateway網(wǎng)關(guān)詳解

    SpringCloud的Gateway網(wǎng)關(guān)詳解

    這篇文章主要介紹了SpringCloud的Gateway網(wǎng)關(guān)詳解,Gateway 是 Spring Cloud 官方推出的一個(gè)基于 Spring 5、Spring Boot 2 和 Project Reactor 的 API 網(wǎng)關(guān)實(shí)現(xiàn),本文將介紹 Spring Cloud Gateway 的基本概念、核心組件以及如何配置和使用它,需要的朋友可以參考下
    2023-09-09
  • SpringBoot中的@ConfigurationProperties注解的使用

    SpringBoot中的@ConfigurationProperties注解的使用

    本文將深入探討@ConfigurationProperties注解的概念、用法、工作原理、配置綁定、類型安全以及如何在實(shí)際開發(fā)中應(yīng)用它,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • java正則表達(dá)式對(duì)特殊字符的轉(zhuǎn)義以及異?,F(xiàn)象

    java正則表達(dá)式對(duì)特殊字符的轉(zhuǎn)義以及異常現(xiàn)象

    這篇文章主要給大家介紹了關(guān)于java正則表達(dá)式對(duì)特殊字符的轉(zhuǎn)義以及異?,F(xiàn)象的相關(guān)資料,在Java中使用正則表達(dá)式匹配特殊字符也需要使用轉(zhuǎn)義字符"\",需要的朋友可以參考下
    2023-06-06
  • Java單例模式簡單示例

    Java單例模式簡單示例

    這篇文章主要介紹了Java單例模式,結(jié)合實(shí)例形式簡單分析了java單例模式的定義與使用技巧,需要的朋友可以參考下
    2017-06-06
  • SpringBoot中定時(shí)任務(wù)@Scheduled注解的使用解讀

    SpringBoot中定時(shí)任務(wù)@Scheduled注解的使用解讀

    這篇文章主要介紹了SpringBoot中定時(shí)任務(wù)@Scheduled注解的使用解讀,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-09-09
  • Java中實(shí)現(xiàn)時(shí)間偏移(Time?Offset)處理過程

    Java中實(shí)現(xiàn)時(shí)間偏移(Time?Offset)處理過程

    本文介紹Java中時(shí)間偏移處理,利用java.time包中的ZonedDateTime、ZoneOffset等類,支持跨時(shí)區(qū)轉(zhuǎn)換、日志統(tǒng)一標(biāo)準(zhǔn),并給出最佳實(shí)踐中注意事項(xiàng)與應(yīng)用場景示例
    2025-09-09
  • Java靜態(tài)代碼塊作用及執(zhí)行順序解析

    Java靜態(tài)代碼塊作用及執(zhí)行順序解析

    這篇文章主要介紹了Java靜態(tài)代碼塊作用及執(zhí)行順序解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-04-04
  • 聊聊為什么要使用BufferedReader讀取File

    聊聊為什么要使用BufferedReader讀取File

    這篇文章主要介紹了為什么要使用BufferedReader讀取File,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-12-12

最新評(píng)論

荔波县| 咸阳市| 博罗县| 葫芦岛市| 新兴县| 墨脱县| 甘泉县| 宁晋县| 保德县| 清水河县| 漳平市| 铜梁县| 元朗区| 大埔县| 鞍山市| 吴桥县| 沧源| 波密县| 京山县| 禹城市| 和林格尔县| 绥棱县| 台北市| 德兴市| 鄢陵县| 华宁县| 华安县| 商洛市| 团风县| 黄平县| 奉化市| 祁阳县| 大理市| 长葛市| 凯里市| 五常市| 喀什市| 漳州市| 柯坪县| 焉耆| 逊克县|