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

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

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

一、安裝插件

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

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

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

二、系統(tǒng)配置

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

System Configuration-Configure System-Publish over SSH中,配置一個遠程ssh連接配置,

各個輸入框,用途如下:

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

?

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

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

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

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

2.2、高級配置

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

SSH Server 配置無誤后,點擊保存即可。

三、項目添加配置

回到目標項目中,點擊構(gòu)建后項目,選擇Send build artifacts over SSH 選項,效果如下:

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

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

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

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

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

筆者案例,填寫如下:

確認無后,點擊保存?;氐巾椖宽撁妫M行立即構(gòu)建,查看項目控制臺輸出如下:

# 省略以上內(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 可以看到對應(yīng)工作目錄中,已經(jīng)生成一個 jenkins 的文件目錄,文件目錄中,包含對應(yīng)本地發(fā)布的項目文件。

C:\Users\ggcyuser>dir jenkins                                                                          
 驅(qū)動器 C 中的卷是 Windows                                                                            
 卷的序列號是 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 個文件        311,667 字節(jié)                                                           
               2 個目錄 34,109,632,512 可用字節(jié)

此時,可能讀者就會問,那如果需要遠程訪問的文件目錄,并不是當前賬戶所在的根目錄如何處理?

其實對于這個問題,分情況處理,主要針對遠程賬戶默認用戶目錄與非默認目錄。

3.1、默認用戶目錄

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

Remote Directory 遠程訪問時,非默認訪問路徑時,需要用戶依據(jù)實際需求進行指定(Windows僅僅適用于當前盤符)。

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

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

項目配置中對應(yīng)的 SSH Server 修改為當前配置好的 directoryserver

保存后,進行構(gòu)建,控制臺輸出如下:

# 省略以上內(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、非默認目錄

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

當前指令xcopy /s /y jenkins "E:\Study\Servers\jenkins",表示拷貝并在目標文件夾文件存在時進行強制覆蓋操作,在 xshell 中能夠正常使用,保存后,進行 Build Now,查看控制臺輸出結(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 遠程可以直接執(zhí)行指令,而不考慮文件轉(zhuǎn)換和拷貝,上述操作可以將文件轉(zhuǎn)換和指令執(zhí)行進行拆分,操作如下:

總結(jié)

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

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

相關(guān)文章

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

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

    這篇文章主要介紹了Scala遞歸函數(shù),Scala遞歸函數(shù)是一種函數(shù)可以調(diào)用自身的函數(shù),直到滿足某個特定的條件為止。在函數(shù)式編程的語言中,遞歸函數(shù)起著重要的作用,因為它可以用來表示循環(huán)或迭代的邏輯
    2023-04-04
  • Mybatis高級映射、動態(tài)SQL及獲得自增主鍵的解析

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

    MyBatis 本是apache的一個開源項目iBatis, 2010年這個項目由apache software foundation 遷移到了google code,并且改名為MyBatis。這篇文章主要介紹了Mybatis高級映射、動態(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 官方推出的一個基于 Spring 5、Spring Boot 2 和 Project Reactor 的 API 網(wǎng)關(guān)實現(xiàn),本文將介紹 Spring Cloud Gateway 的基本概念、核心組件以及如何配置和使用它,需要的朋友可以參考下
    2023-09-09
  • SpringBoot中的@ConfigurationProperties注解的使用

    SpringBoot中的@ConfigurationProperties注解的使用

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

    java正則表達式對特殊字符的轉(zhuǎn)義以及異?,F(xiàn)象

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

    Java單例模式簡單示例

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

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

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

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

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

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

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

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

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

最新評論

时尚| 柯坪县| 阆中市| 武邑县| 宜阳县| 察雅县| 龙州县| 金阳县| 新竹县| 克什克腾旗| 长岭县| 海安县| 台东县| 麻栗坡县| 平塘县| 榆中县| 余干县| 开化县| 专栏| 兴义市| 来宾市| 大宁县| 普兰店市| 台湾省| 武邑县| 康平县| 阳城县| 南阳市| 蒙自县| 游戏| 吐鲁番市| 浮山县| 云南省| 惠安县| 诏安县| 长白| 台南市| 邵阳市| 平阳县| 铜鼓县| 安平县|