git - Jenkins + Tomcat + Git + SSH 设置

标签 git tomcat jenkins ssh

我有一台运行 Tomcat 的 Synology NAS。我在 Tomcat 中部署了 Jenkins。

我也使用相同的 Synology NAS 作为我的 git 服务器。

我使用 Cygwin 和命令 ssh MY_ACCOUNT@MY_IP 访问我的 Synology NAS。

我现在正在尝试设置 Jenkins 自由式作业来构建我的项目之一。

在“源代码管理”部分下,我应该在存储库 URL 框中输入什么才能让 jenkins 查看我的 git 存储库并从中克隆?

我试过的...

1) 我的 git 仓库的 ssh 链接是 ssh://MY_ACCOUNT@MY_IP/~MY_ACCOUNT/git_repos/project.git。我试过将其放入存储库 URL 框中,但出现以下错误消息...

无法连接到存储库:命令“git ls-remote -h ssh://MY_ACCOUNT@MY_IP/~MY_ACCOUNT/git_repos/project.git HEAD”返回状态代码 128: 标准输出: stderr:ssh_exchange_identification:读取:连接由对等方重置 致命:无法从远程存储库读取。 请确保您拥有正确的访问权限 并且存储库存在。

2) 我尝试在构建部分下添加一个执行外壳。 ssh MY_ACCOUNT@MY_IP "git clone git_repos/project.git"但我收到以下错误消息。

由用户 JenkinsUser1 启动 在工作区/volume1/@appstore/jenkins/workspace/Test1 中构建 [测试1] $/bin/sh -xe/var/packages/Tomcat7/target/src/temp/hudson4761299816395827713.sh + ssh MY_ACCOUNT@MY_IP 'git clone git_repos/project.git' ssh_exchange_identification:读取:连接由对等方重置 构建步骤“执行 shell”将构建标记为失败 完成:失败

3) 我还尝试使用对我的 Synology NAS 的根访问权限在/var/services/web/.ssh 文件夹中生成 ssh key (我的 Jenkins SystemInfo 页面显示 HOME 为/var/services/web,USER 也是设置为 Http 顺便说一句) 我将公钥复制到 ~MY_ACCOUNT/.ssh/authorized_keys。(存储我的 git repos 的地方)

4) 作为试金石,我尝试构建一个 github 项目并成功构建。

欢迎任何想法、帮助和建议。

最佳答案

我猜这是一个 shh 身份验证问题。您必须保留第一个解决方案并将凭据设置到 Jenkins 中,并使用它连接到您的 Git 存储库。

您可能会找到一些详细信息 there ,在 “为 Git 设置 Jenkins 凭据” 部分下。

如果问题仍然存在,请尝试第一次从 Jenkins 用户连接到 git 服务器以回答有关 RAS/已知主机的问题

关于git - Jenkins + Tomcat + Git + SSH 设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42192210/

相关文章:

jenkins - 在最后成功的构建 jenkins 管道中部署工件

GitHub 客户端 : Pull Request Button is missing

spring - jms 连接工厂 javax.naming.NamingException : Could not create resource factory instance

java - 在 ubuntu 14.04 上安装 tomcat 8.0.24

spring - 启动 Tomcat Web 应用程序时如何捕获 Spring 错误?

Jenkins运行失败 "service start jenkins"

ios - 无法在 Jenkins 上集成 Alamofire

git - GitOps 与传统 CI/CD 的区别

git - 是否有自动增加 Maven 版本的好方法

git:补丁不适用