在Github中,我创建了webhooks(http://192.168.10.98:8080/github-webhook/)并在Intergration&服务选项卡,我添加了Jenkins(Github插件)。 在webhooks中显示
"We couldn’t deliver this payload: Couldn't connect to server".
在Jenkins中,构建触发器(我为GITScm轮询选择GitHub钩子触发器) 代码更改显示在Jenkins仪表板中但在Server中没有更新。我需要配置如何通过Jenkins更新更改的代码?有人可以帮助我吗?
答案 0 :(得分:0)
如果您输入本地IP地址作为webhook的目标,Github将会遇到问题。它无法访问给定的IP。
答案 1 :(得分:0)
您的IP似乎是私密的,对于webhooks,您需要提供Jenkins Public Ip(您可以从与网络连接的任何地方访问它)
答案 2 :(得分:0)
以192.168.x.x开头的地址是“不可路由”的IP地址。有几个不可路由的范围,它们都仅是LAN。有关私有范围的列表,请参见https://en.wikipedia.org/wiki/Private_network。
如果主机不在您的LAN上,那么如果不进行一些重新配置,它将永远无法通过192.168.x.x地址访问您的服务器。
我建议您创建一个Web服务器,以侦听两个网络接口:Github可以访问的一个公用的可路由IP地址;和一个不可路由的仅LAN地址,该地址可以与您的LAN安装的Jenkins进行通信。 Github将与Web服务器通信,Web服务器会将流量路由到您的Jenkins盒子,依此类推。
您可以通过公共IP地址直接公开您的Jenkins主机,但是最好的做法是将jenkins放在Web服务器等代理后面。
另外,请确保在Web服务器上使用TLS安全证书。仅接受来自github(或其他地方)的HTTPS。未加密流量的詹金斯盒子是一个诱人的目标。有https://letsencrypt.org/之类的服务会为您提供免费的安全证书。