Jenkins

如何讓 Jenkins 監聽 80 埠?

  • May 24, 2022

使用預設配置,Jenkins 正在監聽 8080 埠:

$ ss -tulpn | grep 8080
tcp  LISTEN 0      50       *:8080            *:*     users:(("java",pid=3052,fd=115)

但是,我想改變它並讓 Jenkins 監聽埠 80。

當我進入/etc/sysconfig/jenkins並更改JENKINS_PORTJENKINS_PORT="80"並重新啟動sudo service jenkins restart時,我得到:

$ ss -tulpn | grep 8080
$ ss -tulpn | grep 80
$ curl localhost:8080
curl: (7) Failed to connect to localhost port 8080 after 0 ms: Connection refused
$ curl localhost:80
curl: (7) Failed to connect to localhost port 80 after 0 ms: Connection refused

如何讓 Jenkins 監聽 80 埠?

只有 root 能夠綁定到 1024 以下的埠。這就是 jenkins 預設在 port 上執行的原因8080,因為它們不是特權埠的一部分。解決這個問題的一種方法是在 jenkins 前面有一個反向代理,比如apacheor nginx,監聽 port 80。然後,它應該將流量轉發到後端,即埠 8080 上的 jenkins。我強烈建議不要將 jenkins 直接設置為埠 80。解決此問題的另一種方法是使用 iptables。看看這個執行緒,看看是否能幫助你解決你的問題。 是眾多教程之一,如何在 nginx 或 apache 後面執行 jenkins

引用自:https://unix.stackexchange.com/questions/683780