我在GitHub和CI服务器(Ubuntu)上有代码存储库,Jenkins在防火墙后面。
所以我将代理设置设置为jenkins并且它工作正常(例如,我可以看到可用的插件)。 我在.gitconfig中配置了代理设置。 我在jenkins home / .ssh目录中也有id_rsa。
但是由于错误,jenkins在作业执行期间无法执行git clone:
ssh:连接到主机github.com端口22:连接超时
Jenkins用户在终端中成功执行了proxychains git clone操作。
是否有可能通过代理链强制jenkins工作?或者有人可以给我一些建议吗?
答案 0 :(得分:1)
我用这个解决了我的问题: http://blog.paulbetts.org/index.php/2008/04/08/getting-ssh-to-connect-through-a-socks-proxy/
答案 1 :(得分:0)
我使用STDIO代理隧道解决了类似的问题。
更新~/.ssh/config
:
Host github.com
HostName github.com
User git
ProxyCommand gitproxy %h %p
使用此内容创建~/bin/gitproxy
脚本:
#!/bin/sh
exec socat STDIO PROXY:proxy.com:$1:$2,proxyport=8080,proxyauth=user:password