2017-02-12 93 views
-1

我有一臺運行Tomcat的Synology NAS。我在Tomcat中部署Jenkins。Jenkins + Tomcat + Git + SSH設置

我也使用與我的git服務器相同的Synology NAS。

我使用Cygwin和命令ssh MY_ACCOUNT @ MY_IP訪問我的Synology NAS。

我現在正在嘗試建立一個Jenkins自由式作業來構建我的一個項目。

在源代碼管理部分下,我會放入Repository URL框以便讓jenkins查看和克隆我的git repo?

我曾嘗試...

1)ssh連接到我的混帳回購協議是SSH://[email protected]_IP/~MY_ACCOUNT/git_repos/project.git。我試圖把這個到存儲庫的URL框中,但我的錯誤消息如下...

無法連接到存儲庫:命令「 /project.git HEAD「返回狀態碼128: 標準輸出: stderr:ssh_exchange_identification:讀取:由對等方重置的連接 致命:無法從遠程存儲庫讀取。 請確保您擁有正確的訪問權限 並存在存儲庫。

2)我試過在Build部分下添加一個execute shell。 ssh MY_ACCOUNT @ MY_IP「git clone git_repos/project.git」但我得到下面的錯誤信息。

用戶JenkinsUser1 大廈在工作區的開始/ VOLUME1/@ AppStore中/詹金斯/工作區/ Test1的 [測試1] $/bin/sh的-xe的/ var /包/ Tomcat7 /目標/ src目錄/溫度/ hudson4761299816395827713。 SH + SSH my_account之下@ MY_IP 'git的克隆git_repos/project.git' ssh_exchange_identification:讀:由對等 生成步驟 '執行殼' 連接標記復位爲建立成品失敗 :FAILURE

3)I也有嘗試使用root訪問我的Synology NAS在/var/services/web/.ssh文件夾中生成ssh密鑰(My Jenkins SystemInf o頁顯示HOME是/ var/services/web,USER也設置爲Http btw) 我將公鑰複製到〜MY_ACCOUNT/.ssh/authorized_keys。(其中我的git倉庫存儲)

4 )作爲一項試金石測試,我嘗試構建一個github項目併成功構建。

任何想法,幫助,建議歡迎。

回答

0

我想這是一個shh認證問題。您必須保留第一個解決方案,並將憑證設置爲Jenkins,並將其用於連接到您的Git存儲庫。

您可能會發現一些細節there,在「安裝詹金斯Git證書」部分。

如果問題仍然存在,嘗試從詹金斯用戶在第一時間,以回答關於RAS的問題/已知主機

+0

感謝您的幫助連接到服務器的git。我的詹金斯用戶設置爲http。我已經研究出如何使用http用戶生成ssh密鑰。在我使用root用戶之前,這是錯誤的。現在我有有效的ssh密鑰爲http。我認爲問題在於這一行「ssh://[email protected]_IP/~MY_ACCOUNT/git_repos/project.git HEAD」我的git repos和jenkins都在同一臺機器上。我想我需要嘗試一下jenkins克隆git回購的工作區相對路徑。所以像../../MY/PATH/TO/LOCAL/REPOS/git_repos/project.git。並給http用戶讀/寫訪問權限。 – SRG