簡體   English   中英

如何在設置 jenkins 觸發器時修復 github webhook 中的“我們無法交付此有效負載:無法連接到服務器”?

[英]How to fix "We couldn’t deliver this payload: Couldn't connect to server" in github webhook while setting up a jenkins trigger?

我正在 GitHub 中設置一個 Web-hook 來為每個推送事件觸發 Jenkins 構建。 我正在從 Blue Ocean Docker 容器運行 Jenkins。

https://imgur.com/bNf5dMd

我可以從 docker 容器中指定的http://192.168.99.101:32771/訪問 jenkins。 我已經指定了 git 存儲庫並選中了“GitHub hook trigger for GITScm polling”復選框。

我可以在提交后手動啟動構建過程,但是當我在 github 中使用有效負載 url http://192.168.99.101:32771/github-webhook/設置 webhook 並提交某些內容時,我收到錯誤“我們無法傳送此有效負載:無法連接到服務器”

我看過的其他解決方案。

  1. 使用 ngrok。 但我沒有在本地主機上運行它。
  2. 我嘗試使用個人訪問令牌並創建了一個從 Jenkins 到 Github 的自動 webhook。 我得到了同樣的錯誤。

我錯過了什么,或者我做錯了什么?

Github 永遠不會訪問您的Jenkins 服務器,因為您的服務器只能在網絡內訪問。

錯誤非常明顯。

我們無法傳送此有效負載:無法連接到服務器

http://192.168.99.101:32771這與從網絡外部訪問它的本地主機相同。

可能的解決方案。

  • 在一些可以訪問 Internet 的遠程服務器上運行 jenkins 並在 Github 的 webhook 中提供該 IP
  • 將您的公共 IP傳遞給 Github,如果訪問有任何問題,也許您仍然需要定義端口轉發

對於 jenkins 服務器位於 AWS 的 Ec2 實例中的任何人,如果它位於私有子網中,您可以做兩件事:

  1. 將您的私有 ec2 移動到公共子網中
  2. 在公有子網中創建負載均衡器 (ALB),並將您的私有 ec2 實例附加到該負載均衡器。 然后使用 ALB 的地址為你 github hook。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM